Sobes.tech
Junior

Mis on lambda väljendid Java's?

sobes.tech AI

Vastus AI-lt

Java lambda-väljendus on lühike viis esitada anonüümseid funktsioone (funktsioone ilma nime). Neid kasutatakse funktsionaalsete liideste näidete loomiseks.

Peamised komponendid:

  • Parameetrite nimekiri: Koonusulgudes () sisaldab parameetrite nimekirja. Kui parameetreid pole, kasutatakse tühje sulgusid.
  • Nooled ->: Eraldavad parameetrite nimekirja lambda kehaosast.
  • Keha: Võib olla üksik väljend või koodiplokk sulgudes {}.

Näide ilma parameetriteta:

// Funktsionaalne liides
@FunctionalInterface
interface Greeting {
    void sayHello();
}

// Lambda väljenduse kasutamine
Greeting greeting = () -> System.out.println("Hello, World!");

Näide parameetritega:

// Funktsionaalne liides
@FunctionalInterface
interface MathOperation {
    int operate(int a, int b);
}

// Lambda väljenduse kasutamine
MathOperation addition = (a, b) -> a + b;
MathOperation subtraction = (a, b) -> {
    return a - b;
};

Eelised:

  • Lühidus: Vähendab boilerplate-koodi mahtu.
  • Mugavus: Kasutatakse koos Stream API-ga kogumite töötlemiseks.
  • Funktsionaalne programmeerimine: Toetab funktsionaalsete elementide kasutamist Java-s.

Piirangud:

  • Võib kasutada ainult funktsionaalsete liideste (liideste, millel on üks abstraktne meetod) puhul.
  • Ei saa omada olekut (st. ei saa muuta väliseid muutujaid, kui need pole selgelt deklareeritud final või efektiivselt final).

Lambda väljendeid tutvustati Java 8-s.