代码之家  ›  专栏  ›  技术社区  ›  xuange

java8中的“流”是如何工作的?

  •  -9
  • xuange  · 技术社区  · 8 年前

    我被问到原因或原则。

    我发现Java8中接口“Stream”的大多数方法都没有声明为“default”,所以它们没有方法体。例如

    布尔allMatch(谓词谓词);

    正如您在源文件流中看到的那样。Java语言

    你知道为什么吗?

    非常感谢。

    1 回复  |  直到 8 年前
        1
  •  5
  •   Eugene    8 年前
    abstract class ReferencePipeline<P_IN, P_OUT>
        extends AbstractPipeline<P_IN, P_OUT, Stream<P_OUT>>
        implements Stream<P_OUT>  ...
    

    它是 ReferencePipeline 这实现了它们。例如:

    @Override
    public final boolean anyMatch(Predicate<? super P_OUT> predicate) {
        return evaluate(MatchOps.makeRef(predicate, MatchOps.MatchKind.ANY));
    }