Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Projeto] Contando números positivos e negativos

Olá!

Segue minha resolução:

import java.util.*;

public class PositivosENegativos {
    static void main() {
        Scanner sc = new Scanner(System.in);
        List <Integer> numeros = new ArrayList<>();
        System.out.println("Digite o número ou fim para finalizar: ");
        while (sc.hasNextInt()){
            System.out.println("Digite o número ou fim para finalizar: ");
            numeros.add(sc.nextInt());
        }

        Long numerosNegatigos = numeros.stream()
                        .filter(item -> item < 0)
                        .count();
        Long numerosPositivos = numeros.stream()
                .filter(item -> item > 0)
                .count();
        System.out.println("Quantidade de números negativos: " + numerosNegatigos);
        System.out.println("Quantidade de números positivos: " + numerosPositivos);

    }
}
1 resposta
solução!

Oi, Victor! Como vai?

Agradeço por compartilhar seu código com a comunidade Alura.

Muito bom o uso de Stream API pra filtrar e contar os números positivos e negativos. Essa abordagem deixa o código mais legível e moderno, usando filter() e count() de forma organizada para resolver o problema. Também foi interessante a utilização da lista ArrayList para armazenar os números digitados antes de fazer o processamento.

Você pode testar usar o método forEach() pra percorrer listas e executar alguma ação em cada elemento.


List<Integer> numeros = new ArrayList<>();
numeros.add(5);
numeros.add(-3);
numeros.add(8);

numeros.forEach(numero -> {
    System.out.println(numero);
});

Esse código percorre cada elemento da lista e imprime o valor no console. O método forEach executa uma ação pra cada item da coleção, deixando o código mais direto quando precisamos apenas iterar sobre os dados.

Conteúdos relacionados
Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!