【问题标题】:How to remove entire list but left only last index如何删除整个列表但只留下最后一个索引
【发布时间】:2019-10-31 19:05:57
【问题描述】:

我的情况需要始终一个一个地填写 1 个列表,我想删除整个列表但只留下最后一个索引

我一直在尝试使用这些 sn-ps。但它会一一删除整行

 int totalListPeriodeClick   = listPeriodeClick.size();

    if(listPeriodeClick.size() == 0) {
        listPeriodeClick.add("2019-04-30");
    } else if (listPeriodeClick.size() == 1) {

    } else if (listPeriodeClick.size() > 1){

        for (int i = 0; i < totalListPeriodeClick; i++){
            listPeriodeClick.remove(0);
        }
            setListPeriodeClickString(listPeriodeClick.get(0));
    }

for (int i = 0; i < totalListPeriodeClick; i++){
            listPeriodeClick.remove(0);
        }

我想通过这段代码获取最后一个索引,它将 0-index 作为 list.get(0)

setListPeriodeClickString(listPeriodeClick.get(0));

怎么做?

【问题讨论】:

    标签: java android string list arraylist


    【解决方案1】:

    为什么不:

    if (! listPeriodeClick.isEmpty()) {
      PeriodeClick last = listPeriodeClick.get(listPeriodeClick.size()-1);
      listPeriodeClick.clear();
      listPeriodeClick.add(last);
    }
    

    仅仅为了删除元素而手动迭代(可能很大)列表确实没有意义。记住最后一个条目,扔掉一切,然后重新添加最后一个条目。如果要保存另一个方法调用,请使用

    int size = listPeriodeClick.size();
    if (size > 1) { ...
    

    【讨论】:

      猜你喜欢
      • 2022-07-19
      • 1970-01-01
      • 2020-06-03
      • 1970-01-01
      • 2020-11-12
      • 1970-01-01
      • 1970-01-01
      • 2014-02-08
      • 1970-01-01
      相关资源
      最近更新 更多