📜  Java 8 |带有示例的 BooleanSupplier 接口(1)

📅  最后修改于: 2023-12-03 15:15:54.792000             🧑  作者: Mango

Java 8 |带有示例的 BooleanSupplier 接口

在Java 8中,添加了一些新的函数式接口,其中之一是BooleanSupplier接口。BooleanSupplier接口是一个函数式接口,该接口定义了一个不带参数但返回布尔值的方法getAsBoolean()。该接口通常与java.util.function包中的其他接口一起使用。

BooleanSupplier 接口的语法
@FunctionalInterface
public interface BooleanSupplier {
    boolean getAsBoolean();
}

BooleanSupplier接口是一个函数式接口,因此可以使用lambda表达式来表示它。接口中定义了一个方法getAsBoolean(),该方法返回一个布尔值。

BooleanSupplier 接口的示例

以下示例展示了如何使用BooleanSupplier接口创建lambda表达式和方法引用。

import java.util.Random;
import java.util.function.BooleanSupplier;

public class BooleanSupplierExample {

    public static void main(String[] args) {
        // 使用lambda表达式创建BooleanSupplier
        BooleanSupplier randomBoolean = () -> new Random().nextBoolean();
        System.out.println("Random Boolean value: " + randomBoolean.getAsBoolean());

        // 使用方法引用创建BooleanSupplier
        BooleanSupplier trueBoolean = BooleanSupplierExample::returnTrue;
        System.out.println("True Boolean value: " + trueBoolean.getAsBoolean());

        BooleanSupplier falseBoolean = BooleanSupplierExample::returnFalse;
        System.out.println("False Boolean value: " + falseBoolean.getAsBoolean());
    }

    public static boolean returnTrue() {
        return true;
    }

    public static boolean returnFalse() {
        return false;
    }
}

以上代码创建了两个BooleanSupplier接口的实例 randomBooleantrueBooleanrandomBoolean使用了lambda表达式,而 trueBoolean 使用了方法引用。另外,也创建了一个名为 falseBoolean 的实例,其返回布尔值 false

输出:

Random Boolean value: true
True Boolean value: true
False Boolean value: false
总结

Java 8 的 BooleanSupplier 接口是一个简单但功能强大的函数式接口,可以使用 Lambda 表达式和方法引用创建实例。该接口非常有用,特别是在需要返回布尔值的情况下。