Встречается на собеседованиях • сегодня
Какие знаешь способы реализации Lambda
В Java лямбда-выражения реализуются через функциональные интерфейсы — интерфейсы с одним абстрактным методом (SAM). Основные способы:
1. **Явная реализация**:
```java
Runnable r = () -> System.out.println("Hello");
```
2. **Ссылка на метод**:
```java
List list = Arrays.asList("a", "b");
list.forEach(System.out::println);
```
3. **Анонимный класс** (до Java 8):
```java
Runnable r = new Runnable() {
@Override
public void run() {
System.out.println("Hello");
}
};
```
4. **Встроенные функциональные интерфейсы** (`Predicate`, `Function`, `Supplier` и др. из `java.util.function`):
```java
Predicate isEmpty = s -> s.isEmpty();
```
Лямбды позволяют писать более краткий и читаемый код, особенно при работе с коллекциями и потоками. Они компилируются в синтетические методы и могут захватывать effectively final переменные из окружающего контекста.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы