int[] 转 list<Integer>
时间: 2023-12-23 21:04:51 浏览: 32
要将 int 数组转换为 Integer 列表,可以使用以下方法:
```java
int[] array = {1, 2, 3, 4, 5};
List<Integer> list = new ArrayList<>();
for (int num : array) {
list.add(num);
}
```
或者使用 Java 8 的流操作:
```java
int[] array = {1, 2, 3, 4, 5};
List<Integer> list = Arrays.stream(array)
.boxed()
.collect(Collectors.toList());
```
以上两种方法都可以将 int 数组转换为 Integer 列表。
相关问题
List<Integer>转int【】
要将 `List<Integer>` 转换为 `int[]`,可以使用 Java 8 中新增的 `stream()` 方法和 `mapToInt()` 方法。示例代码如下:
```java
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
int[] arr = list.stream().mapToInt(Integer::intValue).toArray();
// 输出数组元素
for (int i : arr) {
System.out.println(i);
}
```
在上面的示例中,我们首先创建了一个包含五个整数的 `List<Integer>`。然后,我们使用 `stream()` 方法将 `List` 转换为流,接着使用 `mapToInt()` 方法将流中的每个 `Integer` 对象转换为 `int` 值,最后使用 `toArray()` 方法将 `int` 值转换为 `int[]` 数组。请注意,我们需要使用 `Integer::intValue` 方法将 `Integer` 对象转换为 `int` 值。
如果你使用的是 Java 7 或更早的版本,可以使用以下代码将 `List<Integer>` 转换为 `int[]`:
```java
List<Integer> list = Arrays.asList(1, 2, 3, 4, 5);
int[] arr = new int[list.size()];
for (int i = 0; i < list.size(); i++) {
arr[i] = list.get(i);
}
// 输出数组元素
for (int i : arr) {
System.out.println(i);
}
```
在上面的示例中,我们首先创建了一个包含五个整数的 `List<Integer>`。然后,我们创建一个大小为 `List` 大小的 `int[]` 数组,使用 `for` 循环将 `List` 中的每个 `Integer` 对象转换为 `int` 值,并存储在数组中。最后,我们使用 `for-each` 循环遍历数组并输出每个元素。
List<String> 转换List<Integer>
可以使用Java 8中的Stream API来将`List<String>`转换为`List<Integer>`,示例代码如下:
```
List<String> stringList = Arrays.asList("1", "2", "3", "4");
List<Integer> intList = stringList.stream().map(Integer::parseInt).collect(Collectors.toList());
```
上述代码中,`stringList`是一个包含字符串元素的`List`,`intList`是将`stringList`中的元素转换为整数后得到的`List`。具体来说,我们使用`stream()`方法将`stringList`转换为`Stream`,然后使用`map()`方法将每个字符串元素转换为整数,最后使用`collect()`方法将转换后的整数元素收集为一个`List`对象。
需要注意的是,如果`stringList`中包含非数字字符串,则上述代码会抛出`NumberFormatException`异常。在实际使用中,我们需要根据具体情况进行错误处理。