Aşağıdaki kodlara bakalım.Bir lambda ifadesi, işlevsel bir arayüzde nasıl eşlenir?
List<String> names = Arrays.asList("Adam", "Brian", "Supun");
List<Integer> lengths = names.stream()
.map(name -> name.length())
.collect(Collectors.toList());
Ve sadece o streams.map
için javadoc bakacağız. Orada map
yönteminin imzası var.
<R> Stream<R> map(Function<? super T,? extends R> mapper)
birileri JVM
Function<? super T,? extends R> mapper
açısından verdik lambda ifade (
name -> name.length()
) eşler nasıl açıklayabilir misiniz?
Neyi başarmaya çalışıyorsunuz? Akış türünün yerel değişkenlerini oluşturmanız gerekmez. Names.stream() için harita mı arıyorsunuz? (Collectors.toList()) '? Ayrıca, ham Liste türünü kullanmayın. – Michael
@Michael aslında seyircilerin lambda ifade kısmına odaklanmasına ihtiyacım vardı. Bu yüzden bahsettiğiniz ikinci eklemeleri eklemedim. Bu sadece lambda'nın işlevsel bir arayüze eşlenmesini anlamaktır. Başka hiçbir şey. :)) –
@Michael sizin dikkatinizi çekti. Teşekkür ederim. :)) Umarım kodu düzelttim. –