获取和设置列表的第一个和最后一个元素

问题描述 投票:0回答:4

除了

之外,还有其他更好的方法来访问 Java 列表上的第一个和最后一个位置吗?
curr.set(curr.size()-1, 10);
curr.get(curr.size()-1);
curr.set(0, 10);
curr.get(0);

其中

curr
List

java collections
4个回答
5
投票

如果您使用

LinkedList
,您可以获得最后一个和第一个元素。

LinkedList<String> linkedList = new LinkedList<>();
linkedList.add("element");

String last = linkedList.getLast();
String first = linkedList.getFirst();

这两个操作都是恒定时间,但如果列表为空,则会抛出

NoSuchElementException


3
投票

我更喜欢使用 Google Guava 的

Iterables
util 类;

Iterables.getFirst(myList);
Iterables.getLast(myList);

最重要的是,它有一个安全的逻辑,您可以在列表为空/空的情况下给出默认值。

Iterables.getFirst(myList, defaultVal);
Iterables.getLast(myList, defaultVal);

2
投票

关于检索第一个和最后一个元素,Java 21 在 getFirst()

 接口中添加了方法 
getLast()
List

curr.getLast();
curr.getFirst();

1
投票

如果第一个和最后一个是您实际访问的唯一元素,我建议您使用

java.util.Deque<T>
而不是
List

© www.soinside.com 2019 - 2024. All rights reserved.