【问题标题】:How to get the last three value of Arraylist如何获取Arraylist的最后三个值
【发布时间】:2011-05-11 12:35:55
【问题描述】:

嗨 我怎样才能得到列表的最后三个值。我试过这个

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

但它只显示列表的最后一项。我们如何获得列表的最后三个值。请指导我。是否可以将所有这三个值存储在字符串数组中

【问题讨论】:

  • 这是 4 月 1 日的玩笑还是你缺乏智商?
  • +1 否定 -1...这不是 THAT 不好的问题...
  • @ernazm 这个网站只是因为我们彼此之间分享疑虑。这不是玩笑或别的什么。我发布了这个问题,因为我是 Java 新手。这不是取笑别人问题的方式。如果你不想回答我的问题,请闭嘴。
  • 跟java没什么关系,只有一点点逻辑。我相信 SOF 不适合这样的问题。还有@sthupahsmaht,你说得对,这并没有那么糟糕,甚至更糟。
  • 看,问题被否决是有原因的,这是一个很好的例子。它超出了初学者的编程范围——它只是“我不想阅读文档,只是告诉我如何去做,如果你不喜欢它,请闭嘴”的一个例子。

标签: java collections arraylist


【解决方案1】:

List<String> subList = stringAry.subList(fromIndex, toIndex);

【讨论】:

    【解决方案2】:
    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);
    }
    

    【讨论】:

    • 感谢您的即时回复。是否可以在字符串数组中显示所有三个值。
    • 只需将其分配给字符串数组
    【解决方案3】:

    为了完成 sthupahsmaht 的回答:

    List<String> subList = stringAry.subList(fromIndex, toIndex);
    String[] asArray = subList.toArray(subList.size());
    

    【讨论】:

    • @sthupahsmaht 要明确:我认为数组是不必要的,子列表更好,但 OP 要求提供数组
    【解决方案4】:

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

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

    【讨论】:

      【解决方案5】:

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

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-06-29
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-06-18
        • 1970-01-01
        • 1970-01-01
        • 2015-07-05
        相关资源
        最近更新 更多