.stream() 和 Stream.of 之间有什么区别?
2022-09-01 22:34:53
从集合创建流的最佳方式是:
final Collection<String> entities = someService.getArrayList();
entities.stream();
Stream.of(entities);
从集合创建流的最佳方式是:
final Collection<String> entities = someService.getArrayList();
entities.stream();
Stream.of(entities);
第二个不会做你认为它做的事情!它不会为您提供包含集合元素的流;相反,它将为您提供一个具有单个元素的流,该元素是集合本身(而不是其元素)。
如果需要具有包含集合元素的流,则必须使用 。entities.stream()
1)
Stream<String> stream1 = entities.stream()
2)
Stream<Collection<String>> stream2 = Stream.of(entities)
因此,请使用 1 或 2
Stream<String> stream3 = Stream.of("String1", "String2")