📜  Java将数组转换为集合(1)

📅  最后修改于: 2023-12-03 15:16:35.417000             🧑  作者: Mango

Java将数组转换为集合

在Java开发中,有时候需要将数组转换为集合,方便我们对数组进行操作,Java提供了多种方法可以实现这个功能。本文将介绍Java将数组转换为集合的方法。

使用Arrays.asList()

Java中的Arrays类提供了一个asList()方法,可以将数组转换为集合。使用该方法需要注意以下几点:

  • 该方法返回的集合只是一个视图,数组和集合是同步的,意味着更改数组或集合中的任何一个都会影响另一个。
  • 不能使用该方法来创建ArrayList、LinkedList等集合类型。
  • 不能使用该方法来将基本类型数组转换为集合,只能将对象类型数组转换为集合。

以下是使用Arrays.asList()方法将数组转换为集合的代码示例:

String[] arr = {"apple", "banana", "orange"};
List<String> list = Arrays.asList(arr);
System.out.println(list);

输出结果为:

[apple, banana, orange]
使用Collections.addAll()

Java中的Collections类提供了一个addAll()方法,可以将数组添加到现有的集合中。使用该方法的缺点是需要先创建一个集合对象,代码较为繁琐。使用该方法需要注意以下几点:

  • 该方法返回的不是一个新的集合,而是添加了元素后的现有集合。
  • 不能使用该方法将基本类型数组添加到集合中,只能将对象类型数组添加到集合中。

以下是使用Collections.addAll()方法将数组添加到现有集合中的代码示例:

String[] arr = {"apple", "banana", "orange"};
List<String> list = new ArrayList<>();
Collections.addAll(list, arr);
System.out.println(list);

输出结果为:

[apple, banana, orange]
使用Stream()

Java8中引入的Stream API提供了toArray()方法,可以将流中的元素转换为数组。使用该方法需要注意以下几点:

  • 该方法返回的是一个新的数组。
  • 可以将基本类型数组转换为对象类型数组,再将其转换为集合。

以下是使用Stream()方法将数组转换为集合的代码示例:

int[] arr = {1, 2, 3};
List<Integer> list = Arrays.stream(arr).boxed().collect(Collectors.toList());
System.out.println(list);

输出结果为:

[1, 2, 3]

以上就是Java将数组转换为集合的几种方法。由于不同的方法适用于不同的场景,所以在实际开发中需要灵活使用。