Integer[] 数组转换成 List<Integer>
时间: 2023-12-24 19:02:02 浏览: 71
可以使用 Java 的 Arrays.asList() 方法将 Integer[] 数组转换成 List<Integer>,示例代码如下:
```
Integer[] arr = {1, 2, 3, 4};
List<Integer> list = Arrays.asList(arr);
```
需要注意的是,使用 Arrays.asList() 方法转换出来的 List 是一个固定长度的 List,不支持增删操作。如果需要支持增删操作,可以使用 ArrayList 来创建 List,示例代码如下:
```
Integer[] arr = {1, 2, 3, 4};
List<Integer> list = new ArrayList<Integer>(Arrays.asList(arr));
```
相关问题
Java 二维数组转换为List<List<Integer>>
在Java中,将二维数组转换为`List<List<Integer>>`可以使用流(Stream) API以及`Collectors.toList()`方法。这里是一个简单的示例:
```java
int[][] twoDimensionalArray = {
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
List<List<Integer>> listOfLists = Arrays.stream(twoDimensionalArray)
.map(Arrays::stream)
.collect(Collectors.toList());
```
首先,使用`Arrays.stream(array)`将二维数组转换为一维流,然后对每个元素应用`Arrays::stream`将其内部元素也转换为流。最后,使用`collect(Collectors.toList())`将所有流收集到一个`List<List<Integer>>`中。
现在,`listOfLists`包含了原二维数组的所有元素,每一项都是一个包含原始数组内对应行数据的列表。
把List<List<Integer>>转成二维int数组
将`List<List<Integer>>`转换成二维整数数组可以分为两步操作:首先,迭代外部列表中的每个内部列表;然后,将每个内部列表的内容复制到相应的二维数组元素中。这里是一个简单的示例:
```java
import java.util.List;
public int[][] convertToListArray(List<List<Integer>> listOfLists) {
// 初始化二维数组的大小等于最外层List的数量
int rows = listOfLists.size();
int[][] array = new int[rows][];
for (int i = 0; i < rows; i++) {
List<Integer> innerList = listOfLists.get(i);
// 检查内部列表是否为空,避免null pointer异常
if (innerList != null && !innerList.isEmpty()) {
array[i] = new int[innerList.size()];
// 将内部列表的内容复制到二维数组对应位置
for (int j = 0; j < innerList.size(); j++) {
array[i][j] = innerList.get(j);
}
}
}
return array;
}
// 示例用法
List<List<Integer>> listOfIntegers = ... // 这里假设listOfIntegers已经填充了数据
int[][] result = convertToListArray(listOfIntegers);
```
阅读全文