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

37次阅读

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

BinaryOperator<T> 是 Java 8 中的一个函数式接口,是 BiFunction<T, T, T> 的子接口。它示意承受两个雷同类型的输出参数 T 并返回一个后果 T 的操作。


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

import java.util.function.BinaryOperator;

public class BinaryOperatorExample {public static void main(String[] args) {
        // 示例 1:对两个整数进行相加
        BinaryOperator<Integer> add = (num1, num2) -> num1 + num2;
        int sum = add.apply(5, 3);
        System.out.println(sum); // 输入: 8

        // 示例 2:比拟两个字符串的长度并返回较长的那个
        BinaryOperator<String> longerString = (str1, str2) -> str1.length() >= str2.length() ? str1 : str2;
        String result = longerString.apply("Hello", "World");
        System.out.println(result); // 输入: Hello

        // 示例 3:组合多个函数
        BinaryOperator<Integer> multiplyAndAdd = (num1, num2) -> (num1 * 2) + (num2 * 3);
        sum = multiplyAndAdd.apply(2, 3);
        System.out.println(sum); // 输入: 13
    }
}

在示例 1 中,咱们创立了一个 BinaryOperator<Integer> 对象 add,用于对两个整数进行相加。通过调用 apply 办法,并将数字 5 和 3 作为参数传入,咱们能够失去后果 8。

在示例 2 中,咱们创立了一个 BinaryOperator<String> 对象 longerString,用于比拟两个字符串的长度并返回较长的那个。通过调用 apply 办法,并将字符串 “Hello” 和 “World” 作为参数传入,咱们能够失去后果 “Hello”,因为 “Hello” 的长度更长。

在示例 3 中,咱们将两个函数 multiplyAndAdd 进行组合。首先将第一个整数乘以 2,而后将第二个整数乘以 3,并将两个后果相加。通过调用 apply 办法,并将数字 2 和 3 作为参数传入,咱们能够失去后果 13。

正文完
 0