ExpertiDict

Java · Intermediário · Português · Técnico

referência de método

/hefeˈɾẽsjɐ dʒi ˈmɛtodu/substantivo

Forma curta de lambda que aponta para um método existente, como String::length ou System.out::println, usando dois-pontos duplos.

Onde usar

Aparece em streams e comparators: map(String::trim). Em review: 'troque a lambda por referência de método'.

Em código

Function<String, Integer> f =
    Integer::parseInt;
Supplier<List<String>> s = ArrayList::new;
Consumer<String> p = System.out::println;
p.accept("oi");

Exemplos

Troca essa lambda por uma referência de método.

A referência de método ficou ambígua por causa da sobrecarga.

Cuidado

Existem quatro formas (estático, instância ligada, instância não ligada e construtor); confundir a assinatura gera erros de inferência.

Sinônimos

method reference

Veja também

Todos os termos de Java