Sobes.tech
Junior

Kas ir lambda izteiksmes Java?

sobes.tech AI

Atbilde no AI

Lambda izteiksme Java ir valda anonīma (bez nosaukuma) funkcija, kas īsteno funkcionālo interfeisu.

Galvenās īpašības:

  • Tās nav ar nosaukumu.
  • Tās var būt ar parametriem.
  • Tēls var sastāvēt no viena izteiksmes vai operatoru bloka.
  • Atgriešanas tips nav norādīts (automātiski tiek secināts).
  • Tie ir nepieciešami funkcionālai programmēšanai un plūsmu (Streams API) darbam.

Sintakse:

// Bez parametriem
() -> { // tēls }

// Ar vienu parametru (tips var tikt izlaists)
param -> izteiksme

// Ar vairākiem parametriem (tips var tikt izlaists, nepieciešamas iekavas)
(param1, param2) -> { // tēls }

Piemērs:

// Funkcionālais interfeiss (iebūvēts)
import java.util.function.Consumer;

// Ar lambda realizācija
Consumer<String> drukātājs = s -> System.out.println(s);
drukātājs.accept("Sveika pasaule!");

// Izmanto metodē, kas pieņem funkcionālo interfeisu
import java.util.Arrays;
import java.util.List;

List<Integer> skaitļi = Arrays.asList(1, 2, 3, 4, 5);
skaitļi.forEach(n -> System.out.println(n)); // forEach pieņem Consumer

Priekšrocības:

  • Saīsināts kods.
  • Uzlabota lasāmība (vienkāršos gadījumos).
  • Iespēja izmantot funkcionālo programmēšanu.
  • Vienkāršo darbu ar kolekcijām un daudzšāvu apstrādi.

Ierobežojumi:

  • Iekapsēti vai gari lambda izteiksmes var būt grūti saprotami.
  • Nav stāvokļa (nav iespējams būt lauka objektiem).