关于java:Java-8函数式接口之UnaryOperator用法

33次阅读

共计 1045 个字符,预计需要花费 3 分钟才能阅读完成。

UnaryOperator<T> 是 Java 8 中的一个函数式接口,是 Function<T, T> 的子接口。它示意承受一个输出参数和返回值都是雷同类型 T 的操作。


以下是 UnaryOperator<T> 接口的用法示例:

import java.util.function.UnaryOperator;

public class UnaryOperatorExample {public static void main(String[] args) {
        // 示例 1:对整数进行平方运算
        UnaryOperator<Integer> square = num -> num * num;
        int result = square.apply(5);
        System.out.println(result); // 输入: 25

        // 示例 2:增加感叹号到字符串开端
        UnaryOperator<String> addExclamation = str -> str + "!";
        String text = addExclamation.apply("Hello");
        System.out.println(text); // 输入: Hello!

        // 示例 3:组合多个函数
        UnaryOperator<Integer> incrementAndSquare = num -> num + 1;
        incrementAndSquare = incrementAndSquare.andThen(square);
        result = incrementAndSquare.apply(5);
        System.out.println(result); // 输入: 36
    }
}

在示例 1 中,咱们创立了一个 UnaryOperator<Integer> 对象 square,用于对整数进行平方运算。通过调用 apply 办法,并将数字 5 作为参数传入,咱们能够失去后果 25。

在示例 2 中,咱们创立了一个 UnaryOperator<String> 对象 addExclamation,用于在字符串开端增加感叹号。通过调用 apply 办法,并将字符串 “Hello” 作为参数传入,咱们能够失去后果 “Hello!”。

在示例 3 中,咱们将两个函数 incrementAndSquare 和 square 进行组合。首先将传入的整数加 1,而后对后果进行平方运算。通过调用 andThen 办法,咱们能够失去一个新的 UnaryOperator 对象 incrementAndSquare,它将传入的整数加 1 并对后果进行平方运算。最终,通过调用 apply 办法,并将数字 5 作为参数传入,咱们能够失去后果 36。

正文完
 0