Java IntStream noneMatch()示例
IntStream noneMatch(IntPredicate predicate) 返回此流中是否没有元素与提供的谓词匹配。如果不是确定结果所必需的,它可能不会在所有元素上评估该谓词。这是一个 短路的终端操作。 如果一个终端操作在遇到无限的输入时,可以在有限的时间内结束,那么它就是短路的。
语法
boolean noneMatch(IntPredicate predicate)
其中,IntPredicate代表一个谓词(布尔值函数)。
的一个int值参数,并且该函数在以下两种情况下返回true
流中的所有元素与提供的谓词相匹配,或者
流是空的,否则为假。
注意: 如果流是空的,那么返回true,谓词不被评估。
例1: noneMatch()函数用于检查IntStream中是否没有元素能被5整除。
// Java code for IntStream noneMatch
// (Predicate predicate) to check whether
// no element of this stream match
// the provided predicate.
import java.util.*;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream
IntStream stream = IntStream.of(3, 5, 9, 12, 14);
// Check if no element of stream
// is divisible by 5 using
// IntStream noneMatch(Predicate predicate)
boolean answer = stream.noneMatch(num -> num % 5 == 0);
// Displaying the result
System.out.println(answer);
}
}
输出。
false
例2: noneMatch()函数用于检查将两个IntStream串联后得到的IntStream中是否没有小于2的元素。
// Java code for IntStream noneMatch
// (Predicate predicate) to check whether
// no element of this stream match
// the provided predicate.
import java.util.*;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an IntStream after concatenating
// two IntStreams
IntStream stream = IntStream.concat(IntStream.of(3, 4, 5, 6),
IntStream.of(7, 8, 9, 10));
// Check if no element of stream
// is less than 2 using
// IntStream noneMatch(Predicate predicate)
boolean answer = stream.noneMatch(num -> num < 2);
// Displaying the result
System.out.println(answer);
}
}
输出。
true
例3: noneMatch()函数显示如果流是空的则返回true。
// Java code for IntStream noneMatch
// (Predicate predicate) to check whether
// no element of this stream match
// the provided predicate.
import java.util.*;
import java.util.stream.IntStream;
class GFG {
// Driver code
public static void main(String[] args)
{
// Creating an empty IntStream
IntStream stream = IntStream.empty();
// Using IntStream noneMatch() on empty stream
boolean answer = stream.noneMatch(num -> true);
// Displaying the result
System.out.println(answer);
}
}
输出。
true