Collections 入门

使用简洁的 for-each 循环以相反顺序迭代列表。

✕ Java 8
for (ListIterator<String> it =
        list.listIterator(list.size());
    it.hasPrevious(); ) {
    String element = it.previous();
    System.out.println(element);
}
✓ Java 21+
for (String element : list.reversed()) {
    IO.println(element);
}
发现此代码有问题? 告诉我们。
📖

自然语法

增强 for 循环,而非冗长的 ListIterator。

🔒

无复制

reversed() 是视图,不复制列表。

📏

更少代码

六行 ListIterator 样板变为一行。

旧方式
手动 ListIterator
现代方式
reversed()
自 JDK
21
难度
入门
反向列表迭代
可用

自 JDK 21 LTS 起广泛可用(2023 年 9 月)

SequencedCollection 中的 reversed() 方法返回一个反向排序的视图,不进行复制。这与 for-each 循环完美配合,无需 ListIterator 样板。

分享 𝕏 🦋 in