温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何遍历Java Set

发布时间:2026-07-24 12:15:17 来源:亿速云 阅读:96 作者:小樊 栏目:编程语言

在 Java 中,遍历 Set 有多种常见方式,下面按常用程度给你总结,并附示例代码。


1️⃣ 使用增强 for 循环(最常用 ✅)

Set<String> set = new HashSet<>();
set.add("A");
set.add("B");
set.add("C");

for (String s : set) {
    System.out.println(s);
}

优点:简洁、可读性好
推荐日常使用


2️⃣ 使用 Iterator(可安全删除元素 ✅)

Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
    String s = iterator.next();
    System.out.println(s);
}

✅ 删除元素(推荐方式)

Iterator<String> iterator = set.iterator();
while (iterator.hasNext()) {
    if ("B".equals(iterator.next())) {
        iterator.remove(); // 安全删除
    }
}

⚠️ 注意

  • 不能在 for-each 中直接 set.remove(),否则会抛 ConcurrentModificationException

3️⃣ 使用 forEach + Lambda(Java 8+ ✅)

set.forEach(s -> System.out.println(s));

或:

set.forEach(System.out::println);

简洁、函数式风格


4️⃣ 转换成数组再遍历(不常用)

String[] array = set.toArray(new String[0]);
for (String s : array) {
    System.out.println(s);
}

5️⃣ 使用 Stream(适合复杂处理 ✅)

set.stream()
   .filter(s -> s.startsWith("A"))
   .forEach(System.out::println);

✅ 适合:过滤、映射、并行处理


✅ 不同场景推荐

场景 推荐方式
普通遍历 增强 for
需要删除元素 Iterator
Java 8+ 简洁写法 forEach
复杂数据处理 Stream

如果你愿意,我也可以帮你对比 Set / List / Map 的遍历差异,或者结合 HashSet / TreeSet 讲顺序问题。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI