报告冗余的 Stream API 调用,如 map() 或在 count() 调用之前的 boxed()

此类调用不会改变最终计数,因此可以移除。 代码可能依赖于此类映射调用中 lambda 的副作用。 然而,依靠 Stream 链内部的副作用是非常不好的做法。 不能保证该调用在未来的 Java 版本中不会被优化。

示例:


  // map() 调用是冗余的
  long count = list.stream().filter(s -> !s.isEmpty()).map(s -> s.trim()).count();

2024.1 最新变化