一些疑惑,求解释~
public class demo {
public static void demo(int b) {
b = 3;
}
public static void demo2(ArrayList al) {
al.add(100);
}
public static void main(String[] args) {
int b = 1;
demo(b);
System.out.println(b);
ArrayList al = new ArrayList();
al.add(1);
al.add(2);
al.add(3);
demo2(al);
System.out.println(al.size());
}
}
纳闷了,为什么同样是没有返回值的方法,为什么第一个b的结果是原来的1,而第二个al的结果却是改变后的值4呢