List<MyObject> myList = new ArrayList<>(); //populate myList here List<String> nameList = myList.stream() .map(MyObject::getName) .collect(Collectors.toList());
在上面的代码中,我可以期望中的MyObject名称顺序nameList始终与中的顺序相同myList吗?
MyObject
nameList
myList
是的,只要您没有将并行流显式转换为unordered()模式,即使您正在使用并行流,也可以期望这样做。
unordered()
顺序永远不会在顺序模式下更改,但可能会在并行模式下更改。流变得无序:
HashSet
forEach()
toSet()
在您的情况下,这些条件均不满足,因此可以对您的流进行排序。