如何在 Java 中使用 lambda 表达式实现 IntBinaryOperator?

java 8object oriented programmingprogramming更新于 2025/4/23 11:52:17

IntBinaryOperator 是 Java 8 中来自 java.util.function 包的一个函数式接口。该接口接受两个 int 类型的参数作为输入,并返回一个 int 类型的结果。IntBinaryOperator 可以用作 lambda表达式方法引用 的赋值目标。它仅包含一个抽象方法:applyAsInt()

语法

@FunctionalInterface
public interface IntBinaryOperator {
 int applyAsInt(int left, int right)
}

示例

import java.util.function.*;
public class IntBinaryOperatorTest {
   public static void main(String[] args) {
      IntBinaryOperator test1 = (a, b) -> a + b; // lambda 表达式
      System.out.println("Addition of two parameters: " + test1.applyAsInt(10, 20));
      IntFunction test2 = new IntFunction() {
         @Override
         public IntBinaryOperator apply(int value) {
            return new IntBinaryOperator() {
               @Override
               public int applyAsInt(int left, int right) {
                  return value * left * right;
               }
            };
         }
      };
      System.out.println("Multiplication of three parameters: " + test2.apply(10).applyAsInt(20, 30));
   }
}

输出

Addition of two parameters: 30
Multiplication of three parameters: 6000

相关文章