Java 中的 IntConsumer 接口及示例


IntConsumer 接口是一个函数式接口,它表示接受单个整数值参数且不返回结果的操作。这是 Consumer 接口的整型消耗原语特化。这里,函数式接口是指只包含一个抽象方法并表现出单一功能的接口。一些函数式接口的例子包括 Predicate、Runnable 和 Comparable 接口。在本文中,我们将借助示例程序来探索 IntConsumer 接口及其内置方法。

Java 中的 IntConsumer 接口

在 Java 中,IntConsumer 接口只提供两种方法

  • accept()

  • andThen()

我们将逐一讨论它们,但在讨论之前,让我们先看看 IntConsumer 接口的语法。

语法

public interface IntConsumer

在我们的程序中使用它之前,需要导入此接口。要导入 IntConsumer 接口,请使用以下命令:

import java.util.function.IntConsumer;

IntConsumer 的 accept() 方法的使用

accept() 方法是 IntConsumer 接口的内置抽象方法,它接受一个整型输入,但不返回任何值。因此,我们需要使用标准输出方法才能看到结果。

语法

instance.accept(int val)

这里,'instance' 指定 IntConsumer 的实例,'val' 指定将对其执行操作的操作数。

示例 1

以下示例演示了在打印指定整型变量的平方时如何使用 accept() 方法。

方法

  • 首先,导入前面提到的所需包。

  • 然后,创建一个 IntConsumer 实例,它将返回指定整型变量的平方。

  • 最后,使用 accept() 方法以及 IntConsumer 实例,并传递所需的整数值来执行平方运算。

import java.util.function.IntConsumer;
public class Example1 {
   public static void main(String[] args) {
      // creating an instance of IntConsumer
      IntConsumer printSquare = x -> System.out.println("Square of specified value: " + x * x);
      // to print the result
      printSquare.accept(5); 
      printSquare.accept(10);     
   }
}

输出

Square of specified value: 25
Square of specified value: 100

IntConsumer 的 andThen() 方法的使用

andThen() 方法是 IntConsumer 接口的默认方法,它按顺序链接 IntConsumer 的多个操作,并返回这些操作的组合 IntConsumer。它按定义顺序显示结果。

语法

firstInstance.andThen(secondInstance)

示例 2

以下示例说明如何使用 IntConsumer 的 andThen() 方法。

方法

  • 第一步是导入 'java.util.function.IntConsumer',以便我们可以使用其方法。

  • 创建两个 IntConsumer 实例,一个用于计算平方,另一个用于计算立方。

  • 使用 andThen() 方法来链接这两个操作,以便在平方之后执行立方操作。

  • 最后,使用 accept() 方法以及 IntConsumer 实例,并传递所需的整数值来启动操作。

import java.util.function.IntConsumer;
public class Example2 {
   public static void main(String[] args) {
      // creating instances of IntConsumer
      IntConsumer printSquare = x -> System.out.println("Square of specified value: " + x * x);
      IntConsumer printCube = x -> System.out.println("Cube of specified value: " + x * x * x);
      // use of andThen() method
      IntConsumer printResult = printSquare.andThen(printCube);
      // to print the result
      printResult.accept(5); 
      printResult.accept(3); 
   }
}

输出

Square of specified value: 25
Cube of specified value: 125
Square of specified value: 9
Cube of specified value: 27

结论

在本文中,我们学习了 IntConsumer 接口及其内置方法。它只有两种方法,即 accept() 和 andThen()。accept() 方法接受一个整数参数但不返回任何值,而 andThen() 方法返回指定操作的组合 IntConsumer。

更新于:2023年7月20日

浏览量:211

开启您的 职业生涯

完成课程获得认证

开始学习
广告