获取Arraylist最后添加的元素

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

我们如何获取ArrayList中最后一个added元素。我发现 this 解释了如何获取最后一个元素,但是最后添加的元素总是最后一个元素吗?

java arraylist
4个回答
14
投票

是的,正如其他人所说,

ArrayList
保留插入顺序。如果您想要最后添加的元素(仅当您始终使用
add(element)
添加元素时)只需输入以下内容:

yourArrayList.get(yourArrayList.size()-1);

您的答案在您所说的链接中:)


5
投票

是的

ArrayList
,它保留插入的顺序

如果您通过指定索引

add()
在特定位置显式添加元素,在这种情况下,您需要通过自定义ArrayList实现来设置插入时间,并在检索最新插入的元素时考虑计算时间

或者最好有一个指向最后插入项目的参考,如Marko Topolnik建议的那样,在删除时也保持它

更好的办法是使用

LinkedHashSet
,如果你不关心集合的唯一性属性


1
投票

如果您使用

add(element)
签名,则
ArrayList
中的最后一个元素始终是最后插入的元素。

如果您使用

add(index, element)
,您将无法确切知道哪一个是最后一个。创建
ArrayList
子类的最简单解决方案,它将在特殊变量中保存最后插入的元素。


0
投票

是的,在不指定索引的情况下将添加到List

将会将该元素追加到末尾。

getLast

在 Java 21+ 中,每个

List

 都从 
getLast
 接口继承了一个方便的 
SequencedCollection
 方法。有关详细信息,请参阅
JEP 431:排序集合

List< String > letters = new ArrayList<>( List.of( "a" , "b" , "c" ) ); letters.add( "d" ) ; String lastAddedLetter = letters.getLast() ;
    
© www.soinside.com 2019 - 2024. All rights reserved.