Object[] 转 Integer []
时间: 2023-09-26 20:07:32 浏览: 103
可以使用循环遍历 Object 数组,将每个元素转换为 Integer 类型,然后存入新的 Integer 数组中。示例代码如下:
```java
Object[] objArr = {1, 2, "3", "4"};
Integer[] intArr = new Integer[objArr.length];
for (int i = 0; i < objArr.length; i++) {
if (objArr[i] instanceof Integer) {
intArr[i] = (Integer) objArr[i];
} else if (objArr[i] instanceof String) {
intArr[i] = Integer.parseInt((String) objArr[i]);
}
}
```
在上述代码中,首先定义了一个 Object 类型的数组 objArr,其中包含了整数和字符串类型的元素。然后定义了一个长度与 objArr 相同的 Integer 数组 intArr,用于存储转换后的整数类型元素。
接着使用 for 循环遍历 objArr 数组,判断当前元素的类型,如果是 Integer 类型,则直接转换并存入 intArr 数组中;如果是 String 类型,则先将其转换为 Integer 类型,再存入 intArr 数组中。
最终得到的 intArr 数组中将只包含整数类型的元素。
相关问题
Object类型转Integer
可以使用Integer.parseInt()方法将Object类型转换为Integer类型。例如:
```
Object obj = "123";
Integer num = Integer.parseInt(obj.toString());
```
这里假设Object类型的值是一个字符串类型的数字,我们先将它转换为String类型(通过toString()方法),再使用Integer.parseInt()方法将其转换为Integer类型。注意,在使用parseInt()方法时,需要传入一个String类型的参数。
Object数组转integer数组
将Object数组转换为Integer数组在Java中需要遍历并逐个检查每个元素是否为Integer类型,如果是,则添加到新的Integer数组中。这里有一个简单的示例:
```java
Object[] objArray = {new Integer(1), "2", null, 3.4f};
Integer[] intArray = new Integer[objArray.length]; // 预先创建一个新的数组
for (int i = 0; i < objArray.length; i++) {
if (objArray[i] instanceof Integer) {
intArray[i] = (Integer) objArray[i]; // 将Integer对象转换为Integer数组
} else if (objArray[i] != null && objArray[i].toString().matches("\\d+")) {
intArray[i] = Integer.parseInt(objArray[i].toString()); // 如果是字符串形式的数字,转换为整数
} else {
throw new IllegalArgumentException("Element at index " + i + " is not an Integer or a convertible string");
}
}
// 现在intArray就是转换后的Integer数组
```
在这个例子中,如果遇到非Integer也不是可以转换成Integer的字符串,程序会抛出异常。
阅读全文