Sobes.tech
Junior

Java-da lambda ifadələri nədir?

sobes.tech Süni İntellekt

AI-dan cavab

Java-da lambda ifadəsi, funksional interfeysini həyata keçirən anonim (adlı olmayan) funksiyadır.

Əsas xüsusiyyətlər:

  • Adı yoxdur.
  • Parametrlər ala bilər.
  • Tənəffüs tək ifadədən və ya əməliyyatlar blokundan ibarət ola bilər.
  • Geri dönüş tipi göstərilmir (avtomatik olaraq çıxarılır).
  • Funksional proqramlaşdırma və axınlar (Streams API) ilə işləmək üçün lazımdır.

Sintaksis:

// Parametrlər olmadan
() -> { // tənəffüs }

// Bir parametr ilə (tip atlanabilir)
param -> ifadə

// Bir neçə parametr ilə (tip atlanabilir, mötərizələr lazımdır)
(param1, param2) -> { // tənəffüs }

İstifadə nümunəsi:

// Funksional interfeys (daxil edilmiş)
import java.util.function.Consumer;

// Lambda ilə həyata keçirmə
Consumer<String> çapçı = s -> System.out.println(s);
çapçı.accept("Salam dünya!");

// Funksional interfeysi qəbul edən metodda istifadə
import java.util.Arrays;
import java.util.List;

List<Integer> ədədlər = Arrays.asList(1, 2, 3, 4, 5);
ədədlər.forEach(n -> System.out.println(n)); // forEach Consumer qəbul edir

Üstünlüklər:

  • Daha qısa kod.
  • Sadə hallarda oxumağı yaxşılaşdırır.
  • Funksional proqramlaşdırmadan istifadə imkanı verir.
  • Kolleksiyalar və çox ipli işləmə ilə işləri sadələşdirir.

Məhdudiyyətlər:

  • Daxil olan və ya uzun lambda ifadələri başa düşülməsi çətin ola bilər.
  • Vəziyyətə malik deyil (nümunə sahələri ola bilməz).