更多: zhilu jiaocheng

JavaStream noneMatch() 示例

下面的示例中,使用Stream.noneMatch() 方法 检查Stream 中是否没有元素包含任何数字/数字字符。

import java.util.stream.Stream;
public class Main 
{
	public static void main(String[] args) 
	{
		Stream<String> stream = Stream.of("one", "two", "three", "four");

		boolean match = stream.noneMatch( s -> s.contains("\d+") );

		System.out.println(match);		//true
	}
}

输出:

true
Java Stream noneMatch() 方法

Java Stream noneMatch(predicate) 方法是短路终端操作(short-circuiting terminal operation)。
(如果终端操作在无限输入时可能在有限时间内终止,则它是短路的(short-circuiting)。)

它用于检查 Stream 的元素是否与提供的 Predicate 匹配。

Stream noneMatch() 方法

语法

boolean noneMatch(Predicate<? super T> predicate)

noneMatch()返回:

  • true - 如果流中没有元素与给定的谓词匹配,或者流为空。
  • false - 如果至少有一个元素与给定的谓词匹配。

这里的“Predicate”是一个无干扰的、无状态的谓词,适用于流的元素。

  • noneMatch()是一个短路终端操作。
  • 它返回是否没有流的元素与提供的谓词匹配。
  • 如果不是确定结果所必需的,它可能不会评估所有元素的谓词。如果没有流元素与给定的谓词匹配,则该方法返回 true,否则方法返回 false
  • 如果流为空,则返回 true并且不评估谓词。
  • 它与方法 allMatch() 几乎相反。
日期:2020-09-17 00:10:08 来源:oir作者:oir