Хотите перебрать java.util.Map и java.util.List в Java 8, используя последнюю версию JDK8? Недавно я сталкивался с тем же во время работы над своим производственным приложением.
Тема выглядит очень просто, но это worth trying and adopting новые способы перебора карт и списков. Маленькие советы и возможные вопросы для интервью, которые вы можете получить в будущем.
Некоторое время назад я написал статью, которая описывает несколько методов только для List . Но в этом уроке мы рассмотрим все возможные способы итерации и для Map, и для List.
Давайте начнем:
- Создайте класс CrunchifyJava8ForEachTutorialMapAndList.java
- Создать карту под названием crunchifyCompanyMap
- Итерация по карте выше двумя различными способами
- стандартный метод
- путь java8
- Создать список с именем crunchifyCompanyList
- Итерация по вышеуказанному списку тремя различными способами
- стандартный метод
- Java 8 — лямбда-метод
- Java 8 — ссылка на метод
Вот полный пример Java
CrunchifyJava8ForEachTutorialMapAndList.java
Джава
|
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
|
пакет ком . crunchify. учебные пособия ;
Импортировать Java. Util. ArrayList ;
Импортировать Java. Util. HashMap ;
Импортировать Java. Util. Список ;
Импортировать Java. Util. Карта ;
общественности учебный класс CrunchifyJava8ForEachTutorialMapAndList {
общественности статический недействительным main ( Строка [ ] аргументы ) {
// =============== КАРТА ================
Карта < Строка , Строка > crunchifyCompanyMap знак равно новый HashMap < > ( ) ;
crunchifyCompanyMap . положить ( Google , Маунтин-Вью ) ;
crunchifyCompanyMap . положить ( Facebook , Санта-Клара ) ;
crunchifyCompanyMap . положить ( «Твиттер» , Сан-Франциско ) ;
// Method1: стандартный метод для итерации по Java Map
CrunchifyStandardForEachMethod4Map ( crunchifyCompanyMap ) ;
// Method2: метод Java8 для итерации карты Java
CrunchifyJava8ForEachMethod4Map ( crunchifyCompanyMap ) ;
// =============== Список ================
Список
crunchifyCompanyList . добавить ( Google ) ;
crunchifyCompanyList . добавить ( Facebook ) ;
crunchifyCompanyList . добавить ( «Твиттер» ) ;
// Method3: стандартный метод для итерации по списку Java
CrunchifyStandardForEachMethod4List ( crunchifyCompanyList ) ;
// Method4,5: метод Java8 для итерации по списку Java
CrunchifyJava8ForEachMethod4List ( crunchifyCompanyList ) ;
}
частный статический недействительным CrunchifyStandardForEachMethod4Map (
Карта < Строка , Строка > crunchifyCompanyMap ) {
log ( ============ Method1: стандартный метод для итерации по Java Map ) ;
за ( Карта . Вступление < Строка , Строка > crunchifyEntry : crunchifyCompanyMap . entrySet ( ) ) {
log ( crunchifyCompany: + crunchifyEntry . getKey ( ) + , адрес:
+ crunchifyEntry . getValue ( ) ) ;
}
}
частный статический недействительным CrunchifyJava8ForEachMethod4Map ( Map < String , Строка > crunchifyCompanyMap ) {
log ( / n ============ Method2: метод Java8 для итерации по Java Map ) ;
crunchifyCompanyMap . forEach ( ( k , v ) — > log ( crunchifyCompany: + К + , адрес: + v ) ) ;
}
частный статический недействительным CrunchifyStandardForEachMethod4List ( List
log ( / n ============ Method3: стандартный метод для перебора списка Java ) ;
за ( Строка вещь : crunchifyList ) {
журнал ( предмет ) ;
}
}
частный статический недействительным CrunchifyJava8ForEachMethod4List ( List
// лямбда-метод
log ( / n ============ Method4: метод Java8 для итерации по списку Java — с помощью Lambda ) ;
crunchifyList . forEach ( элемент — > журнал ( элемент ) ) ;
// используя ссылку на метод
log ( / n ============ Method5: метод Java8 для итерации по списку Java — с помощью ссылки на метод ) ;
crunchifyList . Foreach (система из:: Println.);
}
// Простая утилита журнала
частный статический недействительным log ( Строка строка ) {
Система. вне. println ( строка ) ;
}
}
|
Выход:
Результат
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
============ Метод 1 : Стандартный метод для перебирать Java Map
crunchifyCompany : Google , адрес : Маунтин- Вью
crunchifyCompany : Twitter , адрес : Сан- Франциско
crunchifyCompany : Facebook , адрес : Санта Клара
============ Метод 2 : Java8 метод для перебирать Java Map
crunchifyCompany : Google , адрес : Маунтин- Вью
crunchifyCompany : Twitter , адрес : Сан- Франциско
crunchifyCompany : Facebook , адрес : Санта Клара
============ Метод 3 : Стандартный метод для перебирать список Java
Google
facebook
щебет
============ Метод 4 : Java8 метод для перебирать список Java — используя лямбду
Google
facebook
щебет
============ Метод5 : Java8 метод для перебирать список Java — с использованием способа Reference
Google
facebook
щебет
|
0.00 (0%) 0 votes









