如何获取数组列表的最后一个值?


当前回答

你所需要做的就是使用size()来获取数组列表的最后一个值。 例如,如果你是整数的数组列表,那么为了得到最后一个值,你必须

int lastValue = arrList.get(arrList.size()-1);

记住,数组列表中的元素可以通过下标值访问。因此,数组列表通常用于搜索项。

其他回答

下面是List接口的一部分(由ArrayList实现):

E e = list.get(list.size() - 1);

E是元素类型。如果列表为空,get抛出IndexOutOfBoundsException异常。你可以在这里找到完整的API文档。

在Kotlin中,你可以使用最后的方法:

val lastItem = list.last()

数组将它们的大小存储在一个名为length的局部变量中。给定一个名为“a”的数组,您可以使用以下方法引用最后一个索引,而不需要知道索引值

(a.length-1)

要给最后一个索引赋值5,你可以使用:

[a.length-1] = 5;

使用流API的替代方案:

list.stream().reduce((first, second) -> second)

结果为最后一个元素的Optional。

如解决方案中所述,如果List为空,则抛出IndexOutOfBoundsException。一个更好的解决方案是使用Optional类型:

public class ListUtils {
    public static <T> Optional<T> last(List<T> list) {
        return list.isEmpty() ? Optional.empty() : Optional.of(list.get(list.size() - 1));
    }
}

如你所料,列表的最后一个元素作为Optional返回:

var list = List.of(10, 20, 30);
assert ListUtils.last(list).orElse(-1) == 30;

它还可以优雅地处理空列表:

var emptyList = List.<Integer>of();
assert ListUtils.last(emptyList).orElse(-1) == -1;