Predicate<T>: Принимает аргумент типа T и возвращает булево значение. Часто используется для фильтрации элементов.Consumer<T>: Принимает аргумент типа T и ничего не возвращает. Применяется для выполнения действий над элементами.Supplier<T>: Не принимает аргументов и возвращает значение типа T. Используется для генерации значений.Function<T, R>: Принимает аргумент типа T и возвращает значение типа R. Используется для преобразования значений.UnaryOperator<T>: Расширяет Function<T, T>, принимает аргумент типа T и возвращает значение того же типа.BinaryOperator<T>: Расширяет BiFunction<T, T, T>, принимает два аргумента типа T и возвращает значение того же типа. Часто используется в операциях редукции.BiPredicate<T, U>: Принимает два аргумента типов T и U, возвращает булево значение.BiConsumer<T, U>: Принимает два аргумента типов T и U, ничего не возвращает.BiFunction<T, U, R>: Принимает два аргумента типов T и U, возвращает значение типа R.Кроме того, есть специализированные функциональные интерфейсы для примитивных типов (IntPredicate, LongSupplier, DoubleConsumer и т.д.) во избежание автоупаковки/распаковки, а также интерфейсы с возвращаемым типом void (Runnable).