Встречается на собеседованиях • сегодня
Где применяется Supplier
`Supplier` — функциональный интерфейс из `java.util.function`, представляющий поставщика значений. Основные сценарии использования:
1. **Ленивая инициализация** — отложенное создание объекта до момента вызова `get()`.
```java
Supplier supplier = () -> new ExpensiveObject();
// Объект создается только при supplier.get()
```
2. **Генерация значений** — например, случайные числа или UUID.
```java
Supplier uuidSupplier = () -> UUID.randomUUID().toString();
```
3. **Интеграция с Stream API** — для генерации бесконечных потоков.
```java
Stream.generate(() -> Math.random()).limit(5).forEach(System.out::println);
```
4. **Замена null на дефолтные значения** через `Optional.orElseGet()`.
```java
Optional.empty().orElseGet(() -> "default");
```
Ключевая особенность — отсутствие входных параметров и обязательство возвращать значение (`T get()`). Полезен для случаев, где нужно отложить выполнение или абстрагировать процесс получения данных.

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