A possible solution would be to return a List from a list of integers that would have in the first position the even numbers and in the second the odd ones, would be like this:
public List<List<Integer>> listaParesImpares(List<Integer> numeros) {
// Instancia uma lista para numeros pares e uma para os impares
List<Integer> listaPares = new ArrayList<>();
List<Integer> listaImpares = new ArrayList<>();
// Para cadas numero na lista de numeros passados no parametro faça
numeros.forEach(numero -> {
// Se o numero for divisivel por 2 adicione-o a lista de pares
if (numero % 2 == 0) listaPares.add(numero);
// Senao adicione-o a lista de impares
else listaImpares.add(numero);
});
// Criasse uma Lista de Listas de inteiro
List<List<Integer>> resultado = new ArrayList<>();
// Adicionasse a lista de numeros pares
resultado.add(listaPares);
// Adicionasse a lista de numeros impares
resultado.add(listaImpares);
// O resultado sera uma lista onde no indice 0 voce
// tera uma lista contendo os numeros pares e no indice 1
// uma lista dos numeros impares
return resultado;
}
You could use this function as follows:
public static void main(String[] args) {
List<List<Integer>> listaParesImpares = listaParesImpares(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9));
System.out.println("Impressao dos Numeros Pares");
List<Integer> listaPares = listaParesImpares.get(0);
listaPares.forEach(System.out::println);
System.out.println("\n\n");
System.out.println("Impressao dos Numeros Impares");
List<Integer> listaImpares = listaParesImpares.get(1);
listaImpares.forEach(System.out::println);
}
Another solution however that I consider better would be to return a String Map and Integer List, in this solution the map would have an entry "even" containing the list of even numbers and an entry "odd" with the list of odd numbers, would be like this:
public Map<String, List<Integer>> mapParesImpares(List<Integer> numeros) {
// Instancia uma lista para numeros pares e uma para os impares
List<Integer> listaPares = new ArrayList<>();
List<Integer> listaImpares = new ArrayList<>();
// Para cadas numero na lista de numeros passados no parametro faça
numeros.forEach(numero -> {
// Se o numero for divisivel por 2 adicione-o a lista de pares
if (numero % 2 == 0) listaPares.add(numero);
// Senao adicione-o a lista de impares
else listaImpares.add(numero);
});
// Criasse o Map
Map<String, List<Integer>> resultado = new HashMap<>();
// Adicionasse a lista de numeros pares
resultado.put("pares", listaPares);
// Adicionasse a lista de numeros impares
resultado.put("impares", listaImpares);
// O resultado sera uma map onde para a chave "pares"
// tera uma lista contendo os numeros pares e para a chave "impares"
// uma lista dos numeros impares
return resultado;
}
To use this function would be:
public static void main(String[] args) {
Map<String, List<Integer>> mapParesImpares = mapParesImpares(Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9));
System.out.println("Impressao dos Numeros Pares");
List<Integer> listaPares = mapParesImpares.get("pares");
listaPares.forEach(System.out::println);
System.out.println("\n\n");
System.out.println("Impressao dos Numeros Impares");
List<Integer> listaImpares = mapParesImpares.get("impares");
listaImpares.forEach(System.out::println);
}