Sobes.tech
Junior

Javaда лямбда билдирүүлөрү эмнелер?

sobes.tech AI

AIден жооп

Javaда lambda билдирүүсү — бул анонимдүү (аталышсыз) функция, ал функционалдык интерфейсти ишке ашырат.

Негизги өзгөчөлүктөрү:

  • Атын албайт.
  • Параметрлерди кабыл алат.
  • Тело бир гана билдирүү же операторлордун блокунан турушу мүмкүн.
  • Кайтаруу түрү көрсөтүлгөн эмес (автоматтык түрдө аныкталат).
  • Функционалдык программалоо жана агымдар (Streams API) менен иштөө үчүн зарыл.

Синтаксис:

// Параметрлерсиз
() -> { // тело }

// Бир параметр менен (типти калтырып коюуга болот)
param -> билдирүү

// Бир нече параметр менен (типти калтырып коюуга болот, калыптар керек)
(param1, param2) -> { // тело }

Колдонуу мисалы:

// Функционалдык интерфейс (эн embedded)
import java.util.function.Consumer;

// Lambda аркылуу ишке ашыруу
Consumer<String> принтер = s -> System.out.println(s);
принтер.accept("Салам дүйнө!");

// Функционалдык интерфейс кабыл алган методдо колдонуу
import java.util.Arrays;
import java.util.List;

List<Integer> сандар = Arrays.asList(1, 2, 3, 4, 5);
сандар.forEach(n -> System.out.println(n)); // forEach, Consumer кабыл алат

Артыкчылыктары:

  • Кыска код.
  • Жөнөкөй учурларда окуулуулук жакшырган.
  • Функционалдык программалоо колдонууга мүмкүнчүлүк берет.
  • Коллекциялар жана көптөгөн жиптер менен иштөөнү жөнөкөйлөтөт.

Чектөөлөр:

  • Ичке кирген же узун lambda-дар түшүнүү кыйын болушу мүмкүн.
  • Статус жок (мисалынын талаалары болбойт).