您的位置:

Java遍历Set集合

一、从JS遍历Set

在JavaScript中,可以使用for…of循环遍历Set集合。如果你需要把Set集合中的元素复制到一个数组中,你可以简单地使用扩展运算符或Array.from()方法。

// 创建一个Set
const mySet = new Set(['one', 'two', 'three']);

// 使用for...of循环遍历Set
for (let value of mySet) {
  console.log(value);
}

// 将Set转换成数组
const myArray = [...mySet]; // 或者使用Array.from()方法

二、遍历Set的三种方式

1.使用迭代器iterator遍历Set集合

Set集合是可迭代的,forEach和for…of循环都可以遍历Set集合。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用迭代器iterator遍历Set
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
  String value = iterator.next();
  System.out.println(value);
}

2.使用forEach方法遍历Set集合

使用forEach方法遍历Set集合,可以使用Lambda表达式或匿名内部类。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用forEach方法遍历Set
set.forEach(value -> System.out.println(value));

// 或者使用匿名内部类
set.forEach(new Consumer<String>() {
  @Override
  public void accept(String value) {
    System.out.println(value);
  }
});

3.使用for循环遍历Set集合

使用for循环遍历Set集合,也可以使用foreach循环。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用for循环遍历Set
for (String value : set) {
  System.out.println(value);
}

// 或者使用foreach循环
set.forEach(value -> System.out.println(value));

三、遍历Set元素

在Java中,Set集合是无序的,因此遍历Set元素时,元素的顺序可能会发生改变。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 遍历Set元素
for (String value : set) {
  System.out.println(value);
}

四、遍历Set集合的方法

1.使用Iterator迭代器遍历Set集合

使用Iterator迭代器遍历Set集合,迭代器是通过Set接口的iterator方法获得的。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用Iterator迭代器遍历Set集合
Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
  String value = iterator.next();
  System.out.println(value);
}

2.使用forEach方法遍历Set集合

使用forEach方法遍历Set集合,可以使用Lambda表达式或方法引用。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用forEach方法遍历Set集合
set.forEach(value -> System.out.println(value));

// 或者使用方法引用
set.forEach(System.out::println);

3.使用for循环遍历Set集合

使用for循环遍历Set集合,也可以使用foreach循环。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用for循环遍历Set集合
for (String value : set) {
  System.out.println(value);
}

// 或者使用foreach循环
set.forEach(value -> System.out.println(value));

4.使用Stream流遍历Set集合

使用Stream流遍历Set集合,可以使用filter、map等方法进一步处理Set集合中的元素。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用Stream流遍历Set集合
set.stream().filter(value -> value.startsWith("t")).forEach(System.out::println);

5.使用Enumeration枚举器遍历Set集合

Enumeration是在Java 1.0时期引入的。使用Enumeration枚举器遍历Set集合,需要使用Set接口中的elements方法获得枚举器对象。

// 创建一个Set
Set<String> set = new HashSet<>();
set.add("one");
set.add("two");
set.add("three");

// 使用Enumeration枚举器遍历Set集合
Enumeration<String> enumeration = Collections.enumeration(set);
while (enumeration.hasMoreElements()) {
  String value = enumeration.nextElement();
  System.out.println(value);
}

总结

本文详细介绍了Java遍历Set集合的多种方法,包括使用迭代器iterator、forEach方法、for循环、Stream流和Enumeration枚举器。在使用Set集合时,可以根据实际需要选择适合自己的遍历方式。