一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|編程技術|正則表達式|

服務器之家 - 編程語言 - JAVA教程 - java8 forEach結合Lambda表達式遍歷 List操作

java8 forEach結合Lambda表達式遍歷 List操作

2020-09-15 00:2091奔跑的蝸牛 JAVA教程

這篇文章主要介紹了java8 forEach結合Lambda表達式遍歷 List操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

我就廢話不多說了,大家還是直接看代碼吧~

?
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
@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);
 }
});
}

補充知識:java8 lambda表達式之map和foreach的區別

看 一段代碼:

?
1
2
3
4
5
6
7
8
9
List<String> list = new ArrayList<>();
list.add("a");
list.add("c");
list.add("s");
list.add("b");
list.add("f");
list.forEach(s -> {
 System.out.println(args.getClass().getTypeName());
});

輸出結果:

?
1
2
3
4
5
java.lang.String[]
java.lang.String[]
java.lang.String[]
java.lang.String[]
java.lang.String[]

再看map操作符

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
List<String> list = new ArrayList<>();
 list.add("1");
 list.add("2");
 list.add("3");
 list.add("4");
 list.add("5");
 
List<Integer> list1 = list.stream().map(s -> {
 Integer a = Integer.parseInt(s);
 a = a+1;
 System.out.println(a.getClass().getTypeName());
 return a;
 }).collect(Collectors.toList());
 System.out.println(list);
 System.out.println(list1);

輸出結果:

?
1
2
3
4
5
6
7
java.lang.Integer
java.lang.Integer
java.lang.Integer
java.lang.Integer
java.lang.Integer
[1, 2, 3, 4, 5]
[2, 3, 4, 5, 6]

map對原來的集合操作后返回一個新的集合。此集合和原集合無任何關系,且不會改變原集合的任何東西

foreach操作的是原集合,返回的還是原集合

以上這篇java8 forEach結合Lambda表達式遍歷 List操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/xldmx/article/details/107990782

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 91色视 | 女仆掀起蕾丝裙被打屁股作文 | 亚洲精品中文字幕在线 | 精品第一国产综合精品蜜芽 | 亚洲电影不卡 | 天天综合网天天做天天受 | 亚洲乱亚洲乱妇41p国产成人 | 国产免费一区不卡在线 | 国产成人久久精品区一区二区 | 日韩欧美一区二区在线观看 | 99av涩导航 | 古代翁熄乩伦小说h | 亚洲sss综合天堂久久久 | 国内精品久久久久影院嫩草 | 美女禁区视频免费观看精选 | 四虎永久在线精品国产馆v视影院 | 国产理论片在线观看 | 久久精品视频uu | 亚洲视频在线看 | 91国在线观看 | 黑人巨大vs北条麻妃在线 | 91精品综合国产在线观看 | 国产精品久久久精品视频 | 成人看的羞羞视频免费观看 | 午夜香蕉 | 国产成人99精品免费观看 | 九九九九在线精品免费视频 | 91porn最新地址 | 506rr亚洲欧美 | 国产精品成人网红女主播 | bnb99八度免费影院 | 嗯好爽视频 | 欧美男同video| yellow高清免费观看日本 | 女性性色生活片免费观看 | jiizz亚洲护士厕所 | 继的朋友无遮漫画免费观看73 | 欧美日韩国产最新一区二区 | seetube18日本第一次 | 日韩在线视频在线 | av在线色 |