一、从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集合时,可以根据实际需要选择适合自己的遍历方式。