2017-04-21 146 views
-1

我有这样的代码:转换对象[] {新的对象[] {}}为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; 

不工作:(

+0

您必须先将每个[]转换为int []。 – njzk2

回答

0

你的阵列应该是这样的:

Object[][] o4 = new Object[][]{{o1}, {o2}, {o3}}; 

丢给它,你必须使用整数,而不是像这样:

Integer[][] i2 = (Integer[][]) o4;