UnaryOperator
Функция, у которой аргумент и результат одного типа.
Доступно с: Java 8
Синтаксис
@FunctionalInterface
public interface UnaryOperator<T> extends Function<T, T>Примеры
Цепочка преобразований строки:
void main() {
UnaryOperator<String> trim = String::trim;
UnaryOperator<String> upper = String::toUpperCase;
IO.println(trim.andThen(upper).apply(" hello "));
}Результат:
HELLOПримечания
Это частный случай Function<T, T>. Его принимают List.replaceAll() и Stream.iterate(). Обратите внимание: andThen() возвращает Function, а не UnaryOperator.
См. также
- Function — Функция, которая принимает значение типа `T` и возвращает значение типа `R`.
- BinaryOperator — Функция двух аргументов, где аргументы и результат одного типа.
- List.replaceAll() — Заменяет каждый элемент списка результатом функции.
- Stream.iterate() — Создаёт поток, где каждый элемент вычисляется из предыдущего.
В учебнике
- Функциональные интерфейсы — Функциональные интерфейсы в Java: аннотация @FunctionalInterface, стандартные Function, Predicate, Consumer, Supplier и их комбинирование.