我处于一种状态,要求始终始终一个接一个地填充一个列表,我想删除整个列表,但只保留最后一个索引
我一直在尝试这些片段。但是它会删除一行中的所有内容
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));
如何完成?
答案 0 :(得分:3)
为什么不呢?
if (! listPeriodeClick.isEmpty()) {
PeriodeClick last = listPeriodeClick.get(listPeriodeClick.size()-1);
listPeriodeClick.clear();
listPeriodeClick.add(last);
}
手动迭代(可能很大)列表以删除元素确实没有意义。记住最后一个条目,丢弃一切,然后重新添加最后一个条目。如果要保存另一个方法调用,请使用
int size = listPeriodeClick.size();
if (size > 1) { ...