Назад к вопросам
Middle
69
questionbank

Что такое лямбда-выражения в Java и какую роль они играют?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Лямбда-выражения в Java — это анонимные функции, которые позволяют передавать код как данные.

Роль лямбда-выражений:

  • Упрощение кода: Позволяют писать более краткий и читаемый код, особенно при работе с функциональными интерфейсами.
  • Функциональное программирование: Поддерживают парадигму функционального программирования в Java, делая его более гибким.
  • Улучшение работы с коллекциями: Используются в Stream API для выполнения таких операций, как фильтрация, маппинг и редукция.
  • Уменьшение шаблонного кода: Заменяют анонимные внутренние классы во многих случаях.

Пример:

// Использование анонимного внутреннего класса
Runnable classicRunnable = new Runnable() {
    @Override
    public void run() {
        System.out.println("Hello from old way!");
    }
};

// Использование лямбда-выражения
Runnable lambdaRunnable = () -> System.out.println("Hello from lambda!");
// Использование лямбды с Stream API для фильтрации
List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");
List<String> filteredNames = names.stream()
                                  .filter(name -> name.startsWith("A"))
                                  .collect(Collectors.toList());