服务器之家

服务器之家 > 正文

Java8中forEach语句循环一个List和Map

时间:2021-08-16 11:49     来源/作者:软测小生

在这篇文章中,我将向您展示如何用新的Java 8 forEach语句循环一个List和Map。

1、forEach 和 Map

1.1、常规循环Map常用的方法。

?
1
2
3
4
5
6
7
8
9
10
11
12
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);
 
for(Map.Entry<String Integer> entry : items.entrySet()){
 System.out.println("Item : "+enty.getKey() + " Count :" + entry.getVlaue())
}

1.2 、在Java 8中, 你可以用forEach + lambda表达式来循环Map

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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);
items.forEach((k,v)->System.out.println(" Item : "+ k + " Count : " + v));
//items.forEach((k,v)->{System.out.println(" Item : "+ k + " Count : " + v);});
items.forEach((k,v)->{
 System.out.println("Item : " + k + " Count : " + v);
 if("E".equals(k)){
 System.out.println("Hello E");
 }
});

2、forEach 和 List

2.1、常规的循环List的方法

?
1
2
3
4
5
6
7
8
9
List<String> items = new ArrayList<>();
items.add("Anna");
items.add("Brian");
items.add("Cici");
items.add("Elena");
//常规的循环List的方法
for(String item : items){
 System.out.println(item);
}

2.2、在Java 8中, 你可以用forEach + lambda表达式  或者方法调用来循环Map

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
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);
//在Java 8中, 你可以用forEach + lambda表达式来循环Map
//输出上面put的所有列表
items.forEach((k,v)->System.out.println(" Item : "+ k + " Count : " + v));
//items.forEach((k,v)->{System.out.println(" Item : "+ k + " Count : " + v);});
//输出上面put的所有列表 + Hello E
items.forEach((k,v)->{
 System.out.println("Item : " + k + " Count : " + v);
 if("E".equals(k)){
 System.out.println("Hello E");
 }
});
Map
package com.foreach.learn;
import java.util.HashMap;
import java.util.Map;
public class forEachLearnMap {
 public static void main(String[] args) {
 //forEach 和 Map
 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(" Item : "+ entry.getKey() + " Count : " + entry.getValue()); 
 }
 //在Java 8中, 你可以用forEach + lambda表达式来循环Map
 //输出上面put的所有列表
 items.forEach((k,v)->System.out.println(" Item : "+ k + " Count : " + v));
 //items.forEach((k,v)->{System.out.println(" Item : "+ k + " Count : " + v);});
 //输出上面put的所有列表 + Hello E
 items.forEach((k,v)->{
  System.out.println("Item : " + k + " Count : " + v);
 if("E".equals(k)){
  System.out.println("Hello E");
  }
 }); 
 
 }
 
}
Lsit:
 
package com.foreach.learn;
import java.util.ArrayList;
import java.util.List;
public class forEachLearnList {
 public static void main(String[] args) { 
 List<String> items = new ArrayList<>();
 items.add("Anna");
 items.add("Brian");
 items.add("Cici");
 items.add("Elena");
 //常规的循环List的方法
 for(String item : items){
  System.out.println(item);
 }
 //在Java 8中, 你可以用forEach + lambda表达式 或者方法调用来循环Map
 //lambda
 //输出 : Anna, Brian, Cici, Elena
 items.forEach(item->System.out.println(item));
 //输出 Cici
 items.forEach(item->{
 if("Cici".equals(item)){
  System.out.println(item);
  }
 });
 //方法调用
 //输出 : Anna, Brian, Cici, Elena
 items.forEach(System.out::println);
 //Stream and filter
 //输出Brian
 items.stream()
 .filter(s->s.contains("Brian"))
 .forEach(System.out::println);
 }
 
}

总结

到此这篇关于Java8中forEach语句循环一个List和Map的文章就介绍到这了,更多相关Java8 forEach循环List和Map内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://cloud.tencent.com/developer/article/1457540

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
2021德云社封箱演出完整版 2021年德云社封箱演出在线看
2021德云社封箱演出完整版 2021年德云社封箱演出在线看 2021-03-15
返回顶部