1 基本类型 一定是值传递的 在函数里面变一定是没用的
2 对象类型 一定是引用传递的 在函数里面变一定是有用的
(所以StringBuffer有用)
3 数组类型 在函数里面变没用!
例如
public class BasedClass {
public static void main(String[] args) {
int[] i = new int[]{1,2};
System.out.println(Arrays.toString(i));
changeIntArray(i);
System.out.println(Arrays.toString(i));
}
private static void changeIntArray(int[] i){
i = new int[]{2,3};
}
}
要变 只能这样变
private static void changeIntArray2(int[] i){
i[0] = 7;
i[1] = 8;
}
4 String 本质上是一个char[] (参考其源代码可知)
所以在函数里变也是没用的