Специализации функциональных интерфейсов
1. Бинарные специализации функциональных интерфейсов
Существуют бинарные специализации (binary specializations) интерфейсов Predicate, Consumer, Function и UnaryOperator, которые принимают на вход два элемента.
Интерфейс | Функциональный дескриптор | Описание |
---|---|---|
BiConsumer<T, U> | (T, U) -> void | Представляет операцию, которая принимает на вход два элемента и не возвращает результат. |
BiFunction<T, U, R> | (T, U) -> R | Представляет операцию, которая принимает на вход два элемента и возвращает результат. |
BiPredicate<T, U> | (T, U) -> boolean | Представляет операцию, которая принимает на вход два элемента и возвращает значение boolean . |
BinaryOperator<T> | (T, T) -> T | Представляет операцию, которая принимает на вход два элемента одного типа и возвращает значение того же типа. |
2. Примитивные специализации функциональных интерфейсов
2.1. Predicate
Интерфейс | Описание |
---|---|
IntPredicate | Принимает на вход значение типа int возвращает значение типа boolean . |
LongPredicate | Принимает на вход значение типа long возвращает значение типа boolean . |
DoublePredicate | Принимает на вход значение типа double возвращает значение типа boolean . |
2.2. Consumer
Интерфейс | Описание |
---|---|
IntConsumer | Принимает на вход значение типа |
LongConsumer | Принимает на вход значение типа |
DoubleConsumer | Принимает на вход значение типа double и ничего не возвращает. |
2.3. Function
Принимающие примитивные специализации
Интерфейс | Описание |
---|---|
IntFunction<R> | Принимает на вход значение типа |
LongFunction<R> | Принимает на вход значение типа long и возвращает значение типа R . |
DoubleFunction<R> | Принимает на вход значение типа double и возвращает значение R. |
Производящие примитивные специализации
Интерфейс | Описание |
---|---|
ToIntFunction<T> | Принимает на вход значение типа T и возвращает значение типа int. |
ToDoubleFunction<T> | Принимает на вход значение типа T и возвращает значение типа double. |
ToLongFunction<T> | Принимает на вход значение типа T и возвращает значение типа long. |
Принимающие и производящие примитивные специализации
Интерфейс | Описание |
---|---|
IntToDoubleFunction | Принимает на вход значение типа int и возвращает значение типа double. |
IntToLongFunction | Принимает на вход значение типа int и возвращает значение типа long. |
LongToDoubleFunction | Принимает на вход значение типа long и возвращает значение типа double. |
LongToIntFunction | Принимает на вход значение типа long и возвращает значение типа int. |
DoubleToIntFunction | Принимает на вход значение типа double и возвращает значение типа int. |
DoubleToLongFunction | Принимает на вход значение типа double и возвращает значение типа long. |
2.4. Supplier
Интерфейс | Описание |
---|---|
BooleanSupplier | Возвращает значение типа boolean. |
IntSupplier | Возвращает значение типа int. |
LongSupplier | Возвращает значение типа long. |
DoubleSupplier | Возвращает значение типа double. |
2.5. UnaryOperator
Интерфейс | Описание |
---|---|
IntUnaryOperator | Принимает и возвращает значение типа int. |
LongUnaryOperator | Принимает и возвращает значение типа long . |
DoubleUnaryOperator | Принимает и возвращает значение типа double . |
2.6. BinaryOperator
Интерфейс | Описание |
---|---|
IntBinaryOperator | Принимает на вход два значения типа int и возвращает значение типа int. |
LongBinaryOperator | Принимает на вход два значения типа long и возвращает значение типа long. |
DoubleBinaryOperator | Принимает на вход два значения типа double и возвращает значение типа double. |
2.7. BiConsumer
Интерфейс | Описание |
---|---|
ObjIntConsumer<T> | Принимает на вход два значения: типа int и Object. |
ObjLongConsumer<T> | Принимает на вход два значения: типа long и Object. |
ObjDoubleConsumer<T> | Принимает на вход два значения: типа double и Object. |
2.8. BiFunction
Интерфейс | Описание |
---|---|
ToIntBiFunction<T, U> | Принимает на вход два объекта и возвращает значение типа int. |
ToLongBiFunction<T, U> | Принимает на вход два объекта и возвращает значение типа long. |
ToDoubleBiFunction<T, U> | Принимает на вход два объекта и возвращает значение типа double. |
Зарегистрируйтесь или войдите, чтобы иметь возможность оставить комментарий.