Java将对象数组转换为整数数组

4

我该如何做呢?我有一个对象数组,想要将它转换为整数数组。


对象数组包含什么内容? - Bozho
2个回答

7

如果Object[]对象数组像这样 objectArray = {2,23,42,3},那么

public static Integer[] convert(Object[] objectArray){
  Integer[] intArray = new Integer[objectArray.length];

  for(int i=0; i<objectArray.length; i++){
   intArray[i] = (Integer) objectArray[i];
  }

  return intArray;
 }

如果你的对象数组是这样的Object[] objectArray = new Integer[/*length*/];

你可以简单地将其转型为(Integer []) objectArray;


+1 很好!可以利用自动装箱功能将其转换为 int! - Ratna Dinakar

0
如果内容可以转换为Integer,则可以将数组转换为Integer []并使用其元素作为int
Object [] arr = new Integer[3];
arr[0] = new Integer(1);
arr[1] = new Integer(2);
arr[2] = 3;
Integer [] newa = (Integer []) arr;
for(int i:newa) {
  System.err.print(i+" "); 
}

否则,您可以创建一个与原始数组长度相同的新int []数组,然后将新创建的数组中的元素设置为转换给定的值:
int [] arr = new int[origarr.length];
arr[0] = convertTo_int(origarr[0]);
// convertTo_int implementation depends on the type of origarr elements.

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接