在 Java 中,遍历 Set
可以使用多种方法。以下是一些常见的方式:
-
使用迭代器:
Set<String> set = new HashSet<>(); set.add("apple"); set.add("banana"); set.add("cherry"); Iterator<String> iterator = set.iterator(); while (iterator.hasNext()) { String element = iterator.next(); System.out.println(element); }
-
使用增强型 for 循环:
for (String element : set) { System.out.println(element); }
-
使用 Java 8 引入的
forEach()
方法:set.forEach(element -> System.out.println(element));
-
转换为数组后遍历:
String[] array = set.toArray(new String[0]); for (String element : array) { System.out.println(element); }
或者
for (int i = 0; i < array.length; i++) { String element = array[i]; System.out.println(element); }
-
使用 Stream API:
set.stream().forEach(element -> System.out.println(element));
以上方法都可以用来遍历 Set
。需要注意的是,Set
中的元素是无序的,所以遍历的顺序可能与插入的顺序不同。另外,使用迭代器或增强型 for 循环时,如果你尝试在遍历过程中修改 Set
,可能会抛出 ConcurrentModificationException
异常。使用 forEach()
方法或 Stream API 遍历时,也不能直接修改 Set
,因为这些方法不提供对集合的修改操作。