如何在 Java 8 中以相反的顺序从列表中获取有序流
有没有一种合理的方法可以从列表(特别是数组列表,但没关系)中获取有序流,该列表以与原始列表中相反的方式流式传输元素?
我正在寻找一种解决方案,它不涉及缓冲任何内容(收集器,另一个列表,数组等,因为它们复制容器是浪费的)或使用(因为它修改了列表)。Collections.reverse
到目前为止,我在这里看到的最干净的方法是实现我自己的版本,并以反向方式推进列表,或者实现反向迭代的a,并在其上使用。Spliterator
ORDERED
Iterator
Spliterators.spliteratorUnknownSize(iterator,ORDERED)
请注意,这个问题与Java 8流反向顺序不同:另一个问题询问如何反转流(这在一般情况下是不可能的),答案提供了以某种方式反转源(我不想这样做),然后流式传输反转的源。反转源的成本是O(N),如果可能的话,我想完全避免它。