代码对比
✕ Java 8
// Get last element var last = list.get(list.size() - 1); // Get first var first = list.get(0); // Reverse iteration: manual
✓ Java 21+
var last = list.getLast(); var first = list.getFirst(); var reversed = list.reversed();
发现此代码有问题? 告诉我们。
为什么现代方式更好
自我描述
getLast() 比 get(size()-1) 更清晰。
统一 API
List、Deque 和 LinkedHashSet 共享相同的有序操作。
反向视图
reversed() 返回视图,不复制集合。
旧方式
索引运算
现代方式
getFirst/getLast
自 JDK
21
难度
入门
JDK 支持
有序集合
可用
自 JDK 21 LTS 起广泛可用(2023 年 9 月)
工作原理
SequencedCollection 添加了 getFirst()、getLast()、reversed()、addFirst()、addLast() 和 removeFirst()/removeLast()。这些方法统一了 List、Deque 和 LinkedHashSet 的 API。
相关文档