在這篇文章中,我將向您展示如何用新的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