Java Stream转换为Set
下面给出了一些方法,可以用来将Java中的Stream转换为Set。
方法1:使用收集器
collect( Collector.toSet()) 方法从流中获取元素并将其存储在一个集合中。 collect(Collector.toSet()) 将流中的元素收集成一个集合。
Stream.collect()方法可以用来收集一个容器中的流元素。由Collectors.toSet()返回的Collector可以被传递,将流中的元素累积到一个新的Set中。
输出。
方法2:将流转换为数组,然后再转换为集合
将流转换为集合的问题可以分为两部分。
输出。
注意:输出是随机的,因为HashSet以随机的顺序将输入作为生成的哈希值。
方法3:使用forEach
流可以使用forEach()转换为Set。使用forEach()方法循环流中的所有元素,然后使用set.add()将每个元素添加到一个空集合中。
输出。
注意: 如果Stream是并行的,那么使用forEach()方法,元素可能不会按原来的顺序被处理。为了保持原来的顺序,可以使用forEachOrdered()方法。