Встречается на 2% собеседований по Java

Какие знаешь функциональные интерфейсы в Java

В Java 8+ есть основные функциональные интерфейсы в пакете java.util.function:

  1. Supplier<T> – поставщик, метод T get()
java
Supplier<String> supplier = () -> "Hello";
  1. Consumer<T> – потребитель, метод void accept(T t)
java
Consumer<String> consumer = s -> System.out.println(s);
  1. Function<T,R> – функция, метод R apply(T t)
java
Function<String, Integer> function = s -> s.length();
  1. Predicate<T> – предикат, метод boolean test(T t)
java
Predicate<String> predicate = s -> s.isEmpty();
  1. UnaryOperator<T> – унарный оператор (частный случай Function), метод T apply(T t)
java
UnaryOperator<String> operator = s -> s.toUpperCase();
  1. BiFunction<T,U,R> – бинарная функция, метод R apply(T t, U u)

Также есть специализированные варианты для примитивов (IntConsumer, LongFunction и т.д.) и другие интерфейсы типа Runnable, Comparator.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы