📜  Java中的 LongStream allMatch() 示例(1)

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

Java中的 LongStream allMatch() 示例

LongStream allMatch() 是 Java 8 中新增的一个方法,用于判断所有的元素是否都满足某个条件。如果所有元素都满足,则返回 true,否则返回 false。该方法适用于 long 类型的流。

下面是一个示例代码:

long[] numbers = {1L, 2L, 3L, 4L, 5L};
LongStream numberStream = Arrays.stream(numbers);

boolean isAllGreaterThanZero = numberStream.allMatch(n -> n > 0);
System.out.println("Are all numbers greater than 0: " + isAllGreaterThanZero);

在上面的代码中,首先定义了一个 long 类型数组 numbers,然后通过 Arrays.stream() 方法将其转换成 LongStream 流。接着使用 allMatch() 方法判断所有元素是否都大于0,最后将结果输出。

运行结果为:

Are all numbers greater than 0: true

代码解析:

allMatch() 方法接受一个函数式接口 LongPredicate 的参数,用于判断元素是否满足某个条件。

在示例中,使用了 Lambda 表达式 n -> n > 0 作为参数传入,该表达式表示当元素大于0时返回 true,否则返回 false

因为所有元素都大于0,所以返回结果为 true

总之,LongStream allMatch() 方法是一个方便的用于判断所有元素是否满足某个条件的方法,可以避免使用迭代器等低效率的方式进行判断。