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).