Java中的 DoubleStream allMatch() 示例
DoubleStream allMatch(DoublePredicate predicate)返回此流的所有元素是否与提供的谓词匹配。如果不需要确定结果,它可能不会评估所有元素的谓词。这是一个短路端子操作。如果一个终端操作在有无限输入时可能会在有限时间内终止,那么它就是短路的。
句法 :
boolean allMatch(DoublePredicate predicate)
参数 :
- DoublePredicate :一个双值参数的谓词(布尔值函数)。
返回值:如果流的所有元素都与提供的谓词匹配或流为空,则该函数返回 true,否则返回 false。
注意:如果流为空,则返回 true 并且不评估谓词。
示例 1: allMatch()函数检查所有元素是否可被 3 整除。
// Java code for DoubleStream allMatch
// (DoublePredicate predicate) to check whether
// all elements of this stream match
// the provided predicate.
import java.util.*;
import java.util.stream.DoubleStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an DoubleStream
DoubleStream stream = DoubleStream.of(3.8, 5.6, 9.2,
12.5, 14.7);
// Check if all elements of stream
// are divisible by 3 or not using
// DoubleStream allMatch(DoublePredicate predicate)
boolean answer = stream.allMatch(num -> num % 3 == 0);
// Displaying the result
System.out.println(answer);
}
}
输出:
false
例2: allMatch()函数检查两个DoubleStream拼接后得到的DoubleStream中的所有元素是否都小于2。
// Java code for DoubleStream allMatch
// (DoublePredicate predicate) to check whether
// all elements of this stream match
// the provided predicate.
import java.util.*;
import java.util.stream.DoubleStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an DoubleStream after concatenating
// two DoubleStreams
DoubleStream stream = DoubleStream.concat(
DoubleStream.of(-2.2, -4.3, -6.4, -8.5),
DoubleStream.of(-1.5, 0, 1.7, 5.9));
// Check if all elements of stream
// are less than 2 or not using
// DoubleStream allMatch(DoublePredicate predicate)
boolean answer = stream.allMatch(num -> num < 2.0);
// Displaying the result
System.out.println(answer);
}
}
输出:
false
示例 3: allMatch()函数显示流是否为空,则返回 true。
// Java code for DoubleStream allMatch
// (DoublePredicate predicate) to check whether
// any element of this stream match
// the provided predicate.
import java.util.*;
import java.util.stream.DoubleStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an empty DoubleStream
DoubleStream stream = DoubleStream.empty();
boolean answer = stream.allMatch(num -> true);
// Displaying the result
System.out.println(answer);
}
}
输出:
true