@Test
void testJava8ForeachMap() {
Map<String, Integer> items = new HashMap<>();
items.put("A", 10);
items.put("B", 20);
items.put("C", 30);
items.put("D", 40);
items.put("E", 50);
items.put("F", 60);
//普通方式遍历Map
for(Map.Entry<String, Integer> entry:items.entrySet()){
System.out.println(entry.getKey()+":"+entry.getValue());
}
System.out.println("===================");
//java8 foreach + 拉姆达表达式遍历Map
items.forEach((k, v) -> {
System.out.println(k+":"+v);
});
}
@Test
void testJava8ForeachList() {
List<String> items = new ArrayList<>();
items.add("A");
items.add("B");
items.add("C");
items.add("D");
items.add("E");
//普通写法遍历List
for (String item:items){
System.out.println(item);
}
System.out.println("单独的 forEach 写法==========");
//单独的 forEach 写法
Consumer consumer = new Consumer<String>() {
@Override
public void accept(String s) {
System.out.println(s);
}
};
items.forEach(consumer);
System.out.println("forEach结合Lambda写法==========");
//输出 A,B,C,D,E
items.forEach(s -> {
System.out.println(s);
});
System.out.println("forEach结合Lambda写法,添加过滤条件==========");
//输出 C
items.forEach((s) -> {
if("C".equals(s)){
System.out.println(s);
}
});
}