Java 如何获取Arraylist的最后三个值

Java 如何获取Arraylist的最后三个值,java,collections,arraylist,Java,Collections,Arraylist,嗨 如何获取列表的最后三个值。我尝试了这个 stringAry.get(stringAry.size()-1); 但它只显示列表的最后一项。我们如何得到列表的最后三个值。请引导我。如果(stringAry.size()>=3),是否可以将这三个值全部存储在字符串数组中//确保确实有3个元素 if (stringAry.size() >= 3) // Make sure you really have 3 elements { List<String> array =

嗨 如何获取列表的最后三个值。我尝试了这个

stringAry.get(stringAry.size()-1);
但它只显示列表的最后一项。我们如何得到列表的最后三个值。请引导我。如果(stringAry.size()>=3),是否可以将这三个值全部存储在字符串数组中

//确保确实有3个元素
if (stringAry.size() >= 3) // Make sure you really have 3 elements
{
    List<String> array = new ArrayList<String>();
    array.add(stringAry.get(stringAry.size()-1)); // The last
    array.add(stringAry.get(stringAry.size()-2)); // The one before the last
    array.add(stringAry.get(stringAry.size()-3)); // The one before the one before the last

    System.out.println(array);
}
{ 列表数组=新的ArrayList(); add(stringAry.get(stringAry.size()-1));//最后一个 add(stringAry.get(stringAry.size()-2));//最后一个 array.add(stringAry.get(stringAry.size()-3));//前一个 System.out.println(数组); }
列表子列表=字符串。

使Sthupahsmat的答案完整:

List<String> subList = stringAry.subList(fromIndex, toIndex);
String[] asArray = subList.toArray(subList.size());
List subList=stringAry.subList(从索引到索引);
字符串[]asArray=subList.toArray(subList.size());

获取仅包含最后3个元素的列表:

if ( stringAry.size() > 3 )
{
    stringAry = stringAry.subList( stringAry.size() - 3, stringAry.size() );
}

这只是另一种可能的解决方案:

stringAry.subList(Math.max(0, stringAry.size() - 3), stringAry.size())

如果大小为三个或更多,则获取最后三个,否则返回所有可用元素。

感谢您的即时回复。这是否可能显示字符串数组中的所有三个值。只需将其分配给字符串数组。这是一个4月1日的笑话还是你缺乏IQ?+1来否定-1…这不是一个很糟糕的问题…@ernazm这个网站只是因为我们自己都有疑问。这不是开玩笑或别的什么。我发表这个问题是因为我是Java新手。这不是取笑别人的问题。如果你不想回答我的问题,就闭嘴吧。这与java无关,只有一点点逻辑。我相信SOF不适合这样的问题。还有@sthupahsmath你是对的,没那么糟糕,甚至更糟。听着,问题可以被否决是有原因的,这是一个很好的例子。这超出了初学者的编程范围——这只是一个“我不想阅读文档,只要告诉我怎么做,如果你不喜欢,就闭嘴。”@sthupahsmat澄清一下:我认为数组是不必要的,子列表更好,但OP要求数组