Skip to content

Instantly share code, notes, and snippets.

@alexjosesilva
Created February 22, 2024 18:10
Show Gist options
  • Select an option

  • Save alexjosesilva/c34e09d92a5053bd7d9061103f9f4dfe to your computer and use it in GitHub Desktop.

Select an option

Save alexjosesilva/c34e09d92a5053bd7d9061103f9f4dfe to your computer and use it in GitHub Desktop.
Programação Declarativa
import java.util.Arrays;
import java.util.List;
public class Main {
public static void main(String[] args) {
List<Integer> numeros = Arrays.asList(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
int somaQuadradosPares = numeros.stream()
.filter(numero -> numero % 2 == 0) // Filtrando os números pares
.mapToInt(numero -> numero * numero) // Mapeando para o quadrado do número
.sum(); // Somando todos os quadrados
System.out.println("A soma dos quadrados dos números pares é: " + somaQuadradosPares);
}
}
/**
Neste exemplo:
Criamos uma lista de inteiros contendo números de 1 a 10.
Usamos a API de Streams para processar os elementos dessa lista de forma declarativa.
Primeiro, filtramos apenas os números pares usando o método filter.
Em seguida, mapeamos cada número para o seu quadrado usando o método mapToInt.
Finalmente, usamos o método sum para calcular a soma de todos os quadrados.
Este é um exemplo de programação declarativa, onde expressamos o que queremos alcançar (soma dos quadrados dos números pares) em vez de como alcançá-lo. O Java fornece uma série de funcionalidades que permitem escrever código nesse estilo, tornando-o mais conciso e expressivo.
**/
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment