How to group a list of numbers by even and odd in Java

1 Answer

0 votes
import java.util.Map;
import java.util.List;
import java.util.ArrayList;
import java.util.stream.Collectors;

public class GroupAListOfNumbersByEvenAndOdd_Java {
    public static void main(String[] args) {
        List<Integer> numbers = new ArrayList<>();
        numbers.add(34);
        numbers.add(25);
        numbers.add(300);
        numbers.add(91);
        numbers.add(2);
        numbers.add(7);
        numbers.add(6783);
        numbers.add(201);
        numbers.add(555);
        numbers.add(907);
        numbers.add(12002);

        Map<Integer, List<Integer>> grouped = numbers.stream()
                .collect(Collectors.groupingBy(number -> number % 2));

        for (Map.Entry<Integer, List<Integer>> entry : grouped.entrySet()) {
            System.out.println(entry.getKey() == 0 ? "\nEven numbers:" : "\nOdd numbers:");
            for (int i : entry.getValue()) {
                System.out.println(i);
            }
        }
    }
}

  
    
/*
run:
    
Even numbers:
34
300
2
12002

Odd numbers:
25
91
7
6783
201
555
907
   
*/

 



answered Aug 2, 2024 by avibootz

Related questions

...