代码如下:
Object[] a = new String[] {"1", "2"};
String[] array = ...;我想把a赋给array,直接使用array = (String[]) a不对,正确的应如何操作?非for循环。谢谢
Object[] a = new String[] {"1", "2"};
String[] array = ...;我想把a赋给array,直接使用array = (String[]) a不对,正确的应如何操作?非for循环。谢谢
调试欢乐多
public static void main(String[] args) {
Object[] a = new String[] {"1", "2"};
String[] array;
array = (String[])a;
for(String s : array) {
System.out.println(s);
}
}
}我这儿没问题,JDK1.5
String[] array =new String[a.length];
System.arraycopy(a, 0, array, 0, a.length);
String[] array = (String[])a;
System.out.println(array[0]);
System.out.println(array[1]);
这样子可以啊。
String[] array = (String[])a;
这两句话编译没错么
a1[0] = "1";
a1[1] = "2";
String[] a3 = new String[a1.length];
a3 = (String[]) a1;
for (int i = 0; i < a3.length; i++)
System.out.println(a3[i]);
String[] array = (String[])a;这两句话编译没错么有错
这个和你顶楼的问题完全不一样啊,顶楼的a本来就是一个String[],强转不会有问题
而这里的a1是一个Object[],就不能转了
String[] array = (String[])a;莫问题的