package cn.dan.day2;
import java.util.Arrays;
public class ArrayReflect {
public static void main(String[] args){
int[] a1 = new int[]{11,2,3} ;
String[] a2 = new String[]{"a","b","c"} ;
System.out.println(a1.getClass().getName());
System.out.println(a2.getClass().getName());
System.out.println(a2.getClass()==a1.getClass());
System.out.println(Arrays.asList(a1));
System.out.println(Arrays.asList(a2));
}
}
为什么代码里面会报这个错误:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Incompatible operand types Class<capture#3-of ? extends String[]> and Class<capture#4-of ? extends int[]>
at cn.dan.day2.ArrayReflect.main(ArrayReflect.java:11)
怎么解决这个错误啊?
还有就是现在我把错误的第11行代码注释掉之后:
运行的结果是:
[I
[Ljava.lang.String;
[[I@dc8569]
[a, b, c]
问题:为什么用Arrays的asList()方法可以输出字符串数组a2,而int类型的数组就不行呢?
[[I@dc8569]表示的是什么? |