除了使用以下代码之外,有没有更好的访问Java列表中第一个和最后一个位置的方法:
curr.set(curr.size()-1, 10);
curr.get(curr.size()-1);
curr.set(0, 10);
curr.get(0);
假设 curr 是一个列表。
除了使用以下代码之外,有没有更好的访问Java列表中第一个和最后一个位置的方法:
curr.set(curr.size()-1, 10);
curr.get(curr.size()-1);
curr.set(0, 10);
curr.get(0);
假设 curr 是一个列表。
LinkedList
,您可以获取最后一个和第一个元素。LinkedList<String> linkedList = new LinkedList<>();
linkedList.add("element");
String last = linkedList.getLast();
String first = linkedList.getFirst();
两个操作的时间复杂度都是常数,但如果列表为空,则会引发 NoSuchElementException
。
我更倾向于使用谷歌Guava的Iterables
实用类;
Iterables.getFirst(myList);
Iterables.getLast(myList);
Iterables.getFirst(myList, defaultVal);
Iterables.getLast(myList, defaultVal);
curr.getLast();
curr.getFirst();
java.util.Deque<T>
而不是List
。