阅读背景:

java中 引用传递、值传递的理解(数组,自定义类,基本数据类型,String类)

来源:互联网 

代码部分:

    public static void main(String[] args) {
        testInt();
        testString();
        testArray();
        testX();
    }

    public static void testInt() {
        int a = 1;
        int b = a;
        a = 2;
        System.out.println("b = "+b);
        changeInt(a);
        System.out.println("a = "+a);
    }

    public static void testString() {
        String a = "1";
        String b = a;
        a = "2";
        System.out.println("b = "+b);
        changeString(a);
        System.out.println("a = "+a);
    }

    public static void testArray() {
        int[] a = {1,2,3};
        int[] b = a;
        a[0] = 2;
        System.out.println("b[0] = "+b[0]);
        changeArray(a);
        System.out.println("a[0] = "+a[0]);
    }

    public static void testX() {
        X a = new X("1");
        X b = a;
        a.setValue("2");
        System.out.println("b.value = "+b.getValue());
        changeX(a);
        System.out.println("a.value = "+a.getValue());
    }


    static void changeInt(int a) { a = 100;}

    static void changeString(String a) { a = "100";}

    static void changeArray(int[] a) { a[0] = 100;}

    static void changeX(X a) { a.setValue("100");}    public static void main(String[] ar



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: