DESKTOP-86ONKLH_20200903-刘天阳

1、问题

public class Test5 {
    String str = "good";
    char[] ch = {'a','b','c'};
    public void c(String str,char[] ch) {
        str = "test ok";
        ch[0] = 'g';
    }
    public static void main(String[] args) {
        Test5 ts = new Test5();
        ts.c(ts.str, ts.ch);
        System.out.print(ts.str + " and ");
        System.out.println(ts.ch);
    }
}

在ts.c(ts.str, ts.ch)中传的是形参,与实例无关,str和ch传入的都是地址;str="test ok"是将"test ok"地址赋值给str,没有改变实例中str所指向的值,而ch[0] = 'g'是找到ch数组将第0个值改成g。

2、吐槽

考试!考试!考试!