java.util.function包下主要有四个常用的接口,分别是Consumer、Supplier、Predicate与Function。 Consumer接口 代码语言:javascript 代码运行次数:0 运行 AI代码解释 publicvoidconsumerFunction(){Consumer<String>consumer=System.out::println;consumer
Consumer consumer2 = System.out::println; 在上面的代码中,我们用了一个方法引用的方式作为一个 Consumer ,同时也可以传给forEach方法。 1.3 其他 Consumer 接口 除了上面使用的 Consumer 接口,还可以使用下面这些 Consumer 接口。IntConsumer、DoubleConsumer、LongConsumer、BiConsumer,使用方法和上面一样。 1.4 Consu...
Function 与 BiFunction 输入一个或多个参数,也可以规定返回值类型,并执行一段逻辑 + View code Function<Integer, Integer> function = num -> num + 1; Function<Integer, Integer> function1 = num -> num * 2; System.out.println(function.apply(1));//out:2System.out.println(function1.compose(fu...
首先新建一个类,在这个类里有一个int型数组,在构造方法里对数组赋初值,然后又一个foo方法传入一个Consumer对象,对每一个数组项调用consumer对象的accept方法。在main函数里实例化Foo对象并调用foo方法。 输出结果: 在上面的代码中,由于Java8引入的lambda表达式,所以其中的 f.foo(new Consumer<Integer>() { @Overri...
java.util.function包中有43个function interface,但是实际上只有四大类: Consumers消费者 Supplier供应商 Functions功能 Predicates谓词 一、Consumers一个对象,BiConsumer两个对象 实际都是对传入的T实体进行操作处理 publicinterfaceConsumer<T>{publicvoidaccept(Tvar1);}Consumer<String>printer=s->System.out.println(s...
java.util.function.Consumer 接口则正好与Supplier接口相反,它不是生产一个数据,而是消费一个数据, 其数据类型由泛型决定。 抽象方法:accept Consumer 接口中包含抽象方法 void accept(T t) ,意为消费一个指定泛型的数据。基本使用如: importjava.util.function.Consumer;public classDemo01Consumer {public static vo...
在jdk8中,引入了一个新的包java.util.function, 可以使java 8 的函数式编程变得更加简便。这个package中的接口大致分为了以下四类:Function: 接收参数,并返回结果,主要方法 R apply(T t) Consumer: 接收参数,无返回结果, 主要方法为 void accept(T t) Supplier: 不接收参数,但返回结构,主要方法为 T get...
使用Consumer可以方便地封装验证逻辑。 import java.util.function.Consumer; public class ValidationConsumer { public static void main(String[] args) { String data = "12345"; Consumer<String> validationConsumer = s -> { if (s.length() < 5) { throw new IllegalArgumentException("数据长度不足")...
Consumer是Java 8中的一个函数式接口,它位于java.util.function包中。它定义了一个名为accept的抽象方法,该方法接受一个参数并且不返回任何结果。换句话说,Consumer接口表示一个消费者,它可以对给定的对象执行某些操作,但不产生任何结果。 Consumer接口的声明如下: 代码语言:javascript 代码运行次数:0 运行 AI代码解释...