如何获取数组列表的最后一个值?
当前回答
下面是List接口的一部分(由ArrayList实现):
E e = list.get(list.size() - 1);
E是元素类型。如果列表为空,get抛出IndexOutOfBoundsException异常。你可以在这里找到完整的API文档。
其他回答
guava提供了另一种从List中获取最后一个元素的方法:
last = Lists.reverse(list).get(0)
如果提供的列表为空,则抛出IndexOutOfBoundsException异常
size()方法返回数组列表中元素的个数。元素的下标值从0到(size()-1),因此可以使用myArrayList.get(myArrayList.size()-1)来检索最后一个元素。
使用流API的替代方案:
list.stream().reduce((first, second) -> second)
结果为最后一个元素的Optional。
如果可以的话,将ArrayList替换为ArrayDeque,它有方便的方法,如removeLast。
下面是List接口的一部分(由ArrayList实现):
E e = list.get(list.size() - 1);
E是元素类型。如果列表为空,get抛出IndexOutOfBoundsException异常。你可以在这里找到完整的API文档。
推荐文章
- 指定的子节点已经有一个父节点。你必须先在子对象的父对象上调用removeView() (Android)
- 对于一个布尔字段,它的getter/setter的命名约定是什么?
- 如何获得当前屏幕方向?
- 如何在Android中渲染PDF文件
- 如何计算一个元素在列表中出现的次数
- c++中类似于java的instanceof
- 我如何解决错误“minCompileSdk(31)指定在一个依赖的AAR元数据”在本机Java或Kotlin?
- 如何POST表单数据与Spring RestTemplate?
- Mockito中检测到未完成的存根
- 我应该如何复制字符串在Java?
- “while(true)”循环有那么糟糕吗?
- 这个方法签名中的省略号(…)是干什么用的?
- Java:如何测试调用System.exit()的方法?
- 带有返回类型的Java方法在没有返回语句的情况下编译
- Java“此语言级别不支持lambda表达式”