最全的java集合list、map、set遍历操作

遍历集合的5种方式

  • 普通遍历
List demoList = new ArrayList<>();
 demoList.add("618");
 demoList.add("520");
for (int i = 0; i < demoList.size(); i++) {
  System.out.println(demoList.get(i));
}
  • 增强遍历
for (String str : demoList) {
  System.out.println(str);
}
  • forEach遍历
demoList.forEach(item -> {
  System.out.println(item);
});
  • 迭代器遍历,支持遍历删除
Iterator iterator = demoList.iterator();
while (iterator.hasNext()) {
    String next = iterator.next();
    System.out.println(next);
    // 支持遍历删除
    if ("520".equals(next)) {
    iterator.remove();
    }
}
  • 流forEach遍历,jdk8支持
demoList.stream().forEach(item -> {
	System.out.println(item);
});

遍历map的5种方式

  • 遍历key值
Map demoMap = new HashMap<>();
demoMap.put("张三", "520");
demoMap.put("李四", "618");
for (String key : demoMap.keySet()) {
	System.out.println(key);
}
  • 遍历value值
for (String value : demoMap.values()) {
	System.out.println(value);
}
  • entrySet遍历,常用遍历map的方式
for (Map.Entry entry : demoMap.entrySet()) {
    String key = entry.getKey();
    String value = entry.getValue();
    System.out.println("key:" + key + ",value:" + value);
}

idea快速生成entrySet循环操作,输入demoMap.entrySet().iter,点击iter即可。

最全的java集合list、map、set遍历操作

快速生成entrySet循环

  • 迭代器遍历,支持遍历删除
Set set = demoMap.keySet();
Iterator iterator = set.iterator();
while (iterator.hasNext()) {
  String key = iterator.next();
  String value = demoMap.get(key);
  // 支持遍历删除
  if ("张三".equals(key)) {
  iterator.remove();
  }
  System.out.println("key:" + key + ",value:" + value);
}
  • forEach遍历
demoMap.forEach((key,value)->{
	System.out.println("key:" + key + ",value:" + value);
});

遍历set的4种方式

  • 迭代器遍历,支持遍历删除
Set demoSet = new HashSet();
demoSet.add("520");
demoSet.add("618");
Iterator iterator = demoSet.iterator();
while (iterator.hasNext()) {
  String next = iterator.next();
  //遍历删除
  if ("520".equals(next)) {
  iterator.remove();
  }
  System.out.println(next);
}
  • 增强for循环遍历
for (String str : demoSet) {
  System.out.println(str);
}
  • forEach遍历
demoSet.forEach(item->{
  System.out.println(item);
});
  • 流遍历,jdk8支持
demoSet.stream().forEach(item->{
  System.out.println(item);
});
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章