Java Util Function Paketi ve Lambda Fonksiyonlar

Bu yazımda Java 8 ile birlikte gelen lambda expression ile birlikte, Stream içerisinde yoğun olarak kullanılan java.util.function içerisinde yer alan interfacesleri inceleyeceğiz.

Functional Interface Nedir?

Sadece 1 tane abstract metotu bulunan interface’lere Functional Interface adı verilir. Bu interface Lambda Expression ile birlikte kullanılabilirdir. Bu yüzden farklı bir isme sahip olmuştur. Functional Interface’ler Java 8’in fonksiyonel programlamasını oluşturmaktadır.

Hazır olarak Java içerisinde bulunan Functional Interfacesler olduğu gibi kendimizde sadece bir tane abstract metotu olan bir interface yaratıp bunu lambda expression ile birlikte kullanabiliriz.

Lambda yapısı gereği birden fazla metotu override edemeyecektir. Bu yüzden birden fazla abstract metotu olan interface’sler Lambda ile kullanılamaz.

java.util.function İçindeki Functional Interfacesler.

Belirtilen paket içerisindeki functional interfaceslerimizi 5’e ayırabiliriz.

  • Consumer : Paremetre alarak bir işlem yapar ve sonuç vermez.
  • Supplier: Parametre almaz fakat sonuç verir.
  • Predicate: Parametre alır ve boolean sonuç döndürür.
  • Operator: Parametre alır ve aynı tipde sonuç verrir
  • Function: Parametre alır ve bir sonuç üretir.

Yapısal olarak isimlendirilmeleri

Kaynak:

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *