在 Java Stream 中,可以使用以下函数来实现类似于 Scala 中的 forall 函数的功能:

  1. allMatch(Predicate<T> predicate):该函数接受一个 Predicate 参数,并返回一个 boolean 值,表示 Stream 中的所有元素是否都满足给定的条件。

示例代码:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);

boolean allEven = numbers.stream().allMatch(n -> n % 2 == 0);
System.out.println(allEven); // 输出 false
  1. noneMatch(Predicate<T> predicate):该函数接受一个 Predicate 参数,并返回一个 boolean 值,表示 Stream 中的所有元素是否都不满足给定的条件。

示例代码:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);

boolean noneNegative = numbers.stream().noneMatch(n -> n < 0);
System.out.println(noneNegative); // 输出 true
  1. anyMatch(Predicate<T> predicate):该函数接受一个 Predicate 参数,并返回一个 boolean 值,表示 Stream 中的任意一个元素是否满足给定的条件。

示例代码:

List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);

boolean anyEven = numbers.stream().anyMatch(n -> n % 2 == 0);
System.out.println(anyEven); // 输出 true

这些函数都是 Java Stream 中的终端操作,它们可以用来判断 Stream 中的元素是否满足某个条件。

Java Stream 中的 forall 函数等效方法

原文地址: https://www.cveoy.top/t/topic/bR5M 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录