Exemplos de Method Reference
De Basef
Revisão de 23h44min de 8 de julho de 2017 por Admin (discussão | contribs) (Criou página com 'Supondo que temos uma lista de palavras como abaixo: <source lang="java"> List<String> palavras = new ArrayList<>(); palavras.add("alura online"); palavras.add("editora casa...')
Supondo que temos uma lista de palavras como abaixo:
List<String> palavras = new ArrayList<>(); palavras.add("alura online"); palavras.add("editora casa do codigo"); palavras.add("caelum");
Segue abaixo alguns exemplos de Method Reference do Java 8:
Exemplo 1:
palavras.sort(Comparator.comparing(String::length));
O código acima é similar ao Lambda:
palavras.sort(Comparator.comparing(s -> s.length()));
Que é similar ao seguinte código sem Lambda:
palavras.sort(Comparator.comparing(new Function<String, Integer>() { @Override public Integer apply(String s) { return s.length(); } }));
Os códigos acima estão usando o novo método default do Java 8 "comparing". Este método recebe uma implementação de "Function", uma interface também do Java 8.