如何在 Java 中把数组转换成集合
原文:https://www.studytonight.com/java-examples/how-to-convert-array-to-set-in-java
在这篇文章中,我们将使用 Java co de 将一个数组转换为 set。数组是基于索引的数据结构,用于存储相似类型的数据,而集合是唯一元素的集合。
这里,我们有几个将数组转换为集合的例子,请始终记住,集合只包含唯一的元素,因此在转换过程中,数组的重复元素不会添加到集合中。
这里,我们使用addAll()
、asList()
和toSet()
方法从数组元素中获取集合。addAll()
方法是一个Collections
类方法,它将数组元素添加到指定的集合(列表、集合等)中
举个例子
让我们举一个将数组转换为集合的例子。这里,我们使用 addAll()方法向集合中添加元素。这很容易从数组中设置。
import java.util.Collections;
import java.util.HashSet;
import java.util.Set;
public class Main {
public static void main(String[] args){
String[] fruits = {"Apple", "Orange", "Banana","Orange"};
for (int i = 0; i < fruits.length; i++) {
System.out.println(fruits[i]);
}
Set<String> fruitsSet = new HashSet<>();
Collections.addAll(fruitsSet, fruits);
System.out.println(fruitsSet);
}
}
苹果 橙子 香蕉 橙子 【苹果、橙子、香蕉】
示例:
我们可以使用asList()
方法获取转换数组进行设置。asList()方法返回数组的列表,该列表被构造器进一步转换为集合。见下面的例子。
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
public class Main {
public static void main(String[] args){
String[] fruits = {"Apple", "Orange", "Banana","Orange"};
for (int i = 0; i < fruits.length; i++) {
System.out.println(fruits[i]);
}
Set<String> fruitsSet = new HashSet<>(Arrays.asList(fruits));
System.out.println(fruitsSet);
}
}
苹果 橙子 香蕉 橙子 【苹果、橙子、香蕉】
示例:Java 8
让我们创建另一个例子来从数组元素中获取集合。这里,我们使用 Collectors 类的toSet()
方法,从流元素中返回集合。如果您想使用流来获取集合元素,这个示例非常有用。
import java.util.Arrays;
import java.util.HashSet;
import java.util.Set;
import java.util.stream.Collectors;
public class Main {
public static void main(String[] args){
String[] fruits = {"Apple", "Orange", "Banana","Orange"};
for (int i = 0; i < fruits.length; i++) {
System.out.println(fruits[i]);
}
Set<String> fruitsSet = new HashSet<>();
fruitsSet = Arrays.stream(fruits).collect(Collectors.toSet());
System.out.println(fruitsSet);
}
}
苹果 橙子 香蕉 橙子 【苹果、橙子、香蕉】