public static void main(String[] args) {
Integer [] datas = new Integer[]{1,2,3,4,5};
List list = Arrays.asList(datas);
System.out.println(list.size());
}
public static void main(String[] args) {
int [] datas = new int[]{1,2,3,4,5};
List list = Arrays.asList(datas);
System.out.println(list.size());
}
上半截代码打印5,下半截代码打印一。大概情况是由于基础类型不能做泛型, asList方法将整个数组看为一个参数。
---------------------------------------------------------------------------------------------------------------------------------------
public static void main(String[] args) {
StringBuffer a = new StringBuffer("A");
StringBuffer b = new StringBuffer("B");
operate(a,b);
System.out.println(a+","+b);
}
static void operate(StringBuffer x,StringBuffer y){
x.append(y);
y = x;
}
答案 : AB,B
原因:对象作为参数传递后不能改变引用。