转换对象[] {新的对象[] {}}为int [] []
问题描述:
我有这样的代码:转换对象[] {新的对象[] {}}为int [] []
Object[] o1 = new Object[]{ 1, 2, 3, 4, 5 };
Object[] o2 = new Object[]{ 10, 20, 30, 40, 50 };
Object[] o3 = new Object[]{ 51, 42, 33, 24, 15 };
Object[] o4 = new Object[]{ o1, o2, o3 };
我怎么可以转换到int[][]
?
int[][] i1 = Arrays.copyOf(o4, o4.length, int[][].class);
int[][] i2 = (int[][]) o4;
不工作:(
答
你的阵列应该是这样的:
Object[][] o4 = new Object[][]{{o1}, {o2}, {o3}};
丢给它,你必须使用整数,而不是像这样:
Integer[][] i2 = (Integer[][]) o4;
您必须先将每个[]转换为int []。 – njzk2