0

Interface Funcional

#Java
Renan Vale
Renan Vale

Criei este artigo com base no módulo 02 - Interfaces Funcionais do curso de Desenvolvimento Avançado em Java. A cada módulo que finalizar irei criar um artigo como este, Sou iniciante e pretendo passar aqui minhas anotações e o que aprendi, espero que gostem.


Interfaces Funcionais


Requisitos Básicos

  • Conceitos básicos de Java
  • Orientação a Objeto


Funções de Alta Ordem

É uma função que retorna uma função ou que recebe uma função como parâmetro.

Exemplo:

public class FuncaoAltaOrdem {
 public static void main(Sring[] args){
  Calculo soma = (a, b) -> a+b;
  System.out.println(executarOperacao(soma, a:1, b:3);
 }
}

public static int executarOperacao(Calculo calculo, int a, int b){
  return calculo.Calcular(a,b);
}

interface Calculo {
 public int calcular(int a, int b);
}



Consumer: Interface Funcional.

Exemplo:

public class Consumidores {
 public static void main (String[] args){
  Consumer<String> imprimirUmaFrase = System.ou::println;
  imprimirUmaFrase.accept(t: "Hello World");
 }
}



Predicate: Recebe um parâmetro e retorna um boolean.

Exemplo:

public class Predicates {
 public static void main (String[] args){
  Predicate<String> estaVazio = valor ->valor.isEmpty();
  System.out.println(estaVazio.test(t: " "));
  System.out.println(estaVazio.test(t: "João"));
 }
}


Suplliers (Supridores): Não recebe parâmetros e retorna algo do tipo que você especificar nos generics.

Exemplo:

public class Suplliers {
 public static void main (String[] args){
  Supllier<Pessoa> instanciaPessoa = Pessoa::new;
  Supllier<Pessoa> instanciaPessoa = () -> new Pessoa();
  System.out.println(instancia Pessoa.get());
 }
}

class Pessoa{
 private String nome;
 private Integer idade;

 public Pessoa(){
  nome = "Renan";
  idade = 28;
 }

@override
 public String toString() {
  return String format("nome: %s, idade: %d", nome, idade);
 }
}


Stream: não tem Método construtor

0
1

Comentários (0)

Começando com desenvolvimento FullStack

Brasil