Dibandingkan kita harus menggunakan perulangan dengan for biasa seperti berikut contohnya

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package tdi.training.java.core.data;

import java.util.List;
import java.util.Arrays;
import java.math.BigDecimal;

public class ForLoopWithArray {

public static void main(String[] args){
List<Object> values = Arrays.asList(
"Dimas Maryanto",
23,
false,
new BigDecimal(100000),
20.5d
);

for(int i = 0; i < values.size(); i++){
System.out.println(values.get(i));
}
}
}

Akan lebih baik kita menggunakan fitur foreach, Perulangan dengan foreach ada 2 macam yaitu

Dengan for

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package tdi.training.java.core.data;

import java.util.List;
import java.util.Arrays;
import java.math.BigDecimal;

public class ForeachWithArray {

public static void main(String[] args){
List<Object> values = Arrays.asList(
"Dimas Maryanto",
23,
false,
new BigDecimal(100000),
20.5d
);

for(Object value : values){
System.out.println(value);
}
}
}

Menggunakan fitur lamda expresion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package tdi.training.java.core.data;

import java.util.List;
import java.util.Arrays;
import java.math.BigDecimal;

public class ForeachLamdaExWithArray {

public static void main(String[] args){
List<Object> values = Arrays.asList(
"Dimas Maryanto",
23,
false,
new BigDecimal(100000),
20.5d
);

values.forEach((value) -> { System.out.println(value); });
}
}

Sedangkan untuk java.util.Map berikut contohnya:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
package tdi.training.java.core.data;

import java.util.Map;
import java.util.HashMap;
import java.math.BigDecimal;

public class ForeachLamdaExWithArrayMap {

public static void main(String[] args){
Map<String, Boolean> values = new HashMap<>();
values.put("dimas", true);
values.put("adib", false);
values.put("rega", true);
values.put("yusuf", true);
values.put("hadi", false);

values.forEach((key, value) -> {
System.out.println(
"nilai key " + key +
" sedangkan valuenya " + value
);
});
}
}