我读到 Stream.of() 调用 Arrays.stream(),除此之外它还能做什么?
在处理以下相同示例时,我没有注意到任何差异:
Stream<Person> arraysStream = Arrays.stream(new Person[] {town.get(0)});
Stream<Person> streamOf= Stream.of(new Person[] {town.get(0)});
我读到 Stream.of() 调用 Arrays.stream(),除此之外它还能做什么?
在处理以下相同示例时,我没有注意到任何差异:
Stream<Person> arraysStream = Arrays.stream(new Person[] {town.get(0)});
Stream<Person> streamOf= Stream.of(new Person[] {town.get(0)});
唯一的区别是该方法
Arrays.stream将数组作为参数,并且该方法Stream.of使用 varargs 进行描述:那些。在第二种情况下,您不能创建新数组,而只需编写:
有一件有趣的事情:
Stream.of()它将一组基元视为一个元素,但它以与Arrays.stream(). 因此,Stream.of()当我们将一组原语转换为Stream<T>. 但是最好对原语使用特殊的类和方法,例如IntStream.of()等。