本帖最后由 王建雨 于 2012-2-9 19:54 编辑
这段代码
import java.util.Arrays;
public class AsListTest {
public static void main(String [] args){
int [] a1= new int[]{1,2,3};
Object [] a2 = new Object []{1,2,3};
Object a3 = a1;
Object [] a4 = new Object[]{a1,a2};
System.out.println("a1:"+Arrays.asList(a1));
System.out.println("a2:"+Arrays.asList(a2));
System.out.println("a3:"+Arrays.asList(a3));
System.out.println("a4:"+Arrays.asList(a4));
}
}
打印出的结果是:
a1:[[I@1bab50a]
a2:[1, 2, 3]
a3:[[I@1bab50a]
a4:[[I@1bab50a, [Ljava.lang.Object;@c3c749]
我的问题是:
a1没有被Arrays.asList()处理,是因为Arrays.asList()只能处理Object类型的,那么请问:
1.a2和a3都是Object类型的,为什么Arrays.asList()只处理了a2,没有处理a3?
2.a4的声明方式跟a2一样,为什么也没有被Arrays.asList()处理呢? |