Sobes.tech
Middle

რა არის ლამბდა გამოხატულებები Java-ში?

sobes.tech AI

პასუხი AI-სგან

Java-да λ өрнегі — бұл анонимді функция. Бұл функцияны әдістің аргументі ретінде немесе кодты деректер ретінде қарастыруға мүмкіндік береді.

Негізгі сипаттамалар:

  • Анонимдік: Аты жоқ.
  • Функционалды интерфейс: λ өрнегі әрқашан функционалды интерфейспен байланысты (бір абстрактілі әдісі бар интерфейс).
  • Синтаксис: (параметрлер) -> { дене }

Consumer функционалды интерфейсімен пайдалану мысалы:

import java.util.function.Consumer;

// `Consumer<T>` функционалды интерфейсі бір абстрактілі әдіске ие: accept(T t)
Consumer<String> сәлем = (аты) -> {
    System.out.println("Сәлем, " + аты);
};

сәлем.accept("Дүние"); // Шығыс: Сәлем, Дүние

Runnable интерфейсімен пайдалану мысалы:

// `Runnable` интерфейсі бір абстрактілі әдіске ие: run()
Runnable тапсырма = () -> {
    System.out.println("Тапсырма бөлек ағында орындалады");
};

new Thread(тапсырма).start(); // Жаңа ағында тапсырманы іске қосу

Синтаксис вариациялары:

  • Параметрлерсіз: () -> { System.out.println("Сәлем"); }
  • Бір параметр, жақшасыз: аты -> System.out.println("Сәлем, " + аты)
  • Бірнеше параметрлер, жақшалар мен типтерімен: (int a, int b) -> { return a + b; }
  • Типтері жоқ бірнеше параметрлер (типті болжау): (a, b) -> a + b
  • Бір жолды дене, returnсіз: (a, b) -> a + b
  • Көпжолды дене, жақша мен return-мен (қажет болса): (a, b) -> { int қосынды = a + b; return қосынды; }

Lambda өрнектері кодты ықшамдатады, оқылуын жеңілдетеді және Java-да функционалды бағдарламалауды қолдануға мүмкіндік береді.