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