java的int数组转为集合
时间: 2024-06-08 17:08:19 浏览: 114
在Java中,将int数组转换为集合有多种方法。
一种常见的方法是先将int数组转换为Integer数组,然后再将Integer数组转换为集合。可以使用流式操作来完成这个过程。首先,使用Arrays类的stream方法将int数组转换为IntStream流。接着,使用boxed方法将流中的元素装箱,转换为Stream<Integer>。然后,使用toArray方法将Stream<Integer>转换为Integer数组。最后,可以将Integer数组转换为List集合,可以使用Arrays类的asList方法或者使用流的collect方法。
另一种方法是使用循环遍历int数组,逐个将元素添加到List集合中。可以创建一个空的ArrayList<Integer>,然后遍历int数组,使用add方法将每个元素添加到List中。这种方法比较传统,但也是有效的。
综上所述,将int数组转换为集合有两种常用方法:使用流式操作和使用循环遍历。具体使用哪种方法取决于个人偏好和具体情况。
参考资料:
https://blog.csdn.net/qq_31865983/article/details/106443244
相关问题
java 将数组转为List集合
Java 中可以使用 `java.util.Arrays.asList(T... a)` 方法将数组转换为 List 集合。
例如,下面的代码演示了如何将一个整数数组转换为 List 集合:
```
int[] arr = {1, 2, 3, 4, 5};
List<Integer> list = Arrays.asList(arr);
```
注意,转换后的 List 集合是一个固定大小的集合,不能进行增加、删除操作,否则会抛出 `UnsupportedOperationException` 异常。
如果希望生成的 List 集合是可变的,可以使用 `java.util.ArrayList` 类的构造函数:
```
int[] arr = {1, 2, 3, 4, 5};
List<Integer> list = new ArrayList<>(Arrays.asList(arr));
```
这样就可以对转换后的 List 集合进行增加、删除操作了。
java 数组转为map集合
Java中可以通过以下几种方式将数组转换为Map集合:
1. 使用循环遍历数组,将数组中的元素逐一添加到Map中,元素作为键,索引作为值。例如:
```
String[] arr = {"key1", "key2", "key3"};
Map<String, Integer> map = new HashMap<>();
for (int i = 0; i < arr.length; i++) {
map.put(arr[i], i);
}
```
2. 使用Java 8的Stream流进行转换。先将数组转换为Stream流,然后使用Collectors.toMap()方法将流转换为Map集合。例如:
```
String[] arr = {"key1", "key2", "key3"};
Map<String, Integer> map = Arrays.stream(arr)
.collect(Collectors.toMap(key -> key, value -> Arrays.asList(arr).indexOf(value)));
```
3. 使用第三方库Apache Commons Collections工具类ArrayUtils,调用ArrayUtils.toMap()方法进行转换。例如:
```
String[] arr = {"key1", "key2", "key3"};
Map<String, Integer> map = ArrayUtils.toMap(arr, ArrayUtils.addAll(new Object[arr.length], new Integer[arr.length]));
```
阅读全文