gpt4 book ai didi

Java foreach 循环 : for (Integer i : list) { . .. }

转载 作者:IT老高 更新时间:2023-10-28 20:56:28 25 4
gpt4 key购买 nike

当我像下面这样使用 JDK5 时

ArrayList<Integer> list = new ArrayList<Integer>();  
for (Integer i : list) {

//cannot check if already reached last item

}

另一方面,如果我只使用 Iterator

ArrayList<Integer> list = new ArrayList<Integer>();
for (Iterator i = list.iterator(); i.hasNext();) {

//i can check whether this is last item
if(i.hasNextItem()){
}

}

如何使用 for (Integer i : list) {

检查我是否已经到达最后一项

最佳答案

一种方法是使用计数器:

ArrayList<Integer> list = new ArrayList<Integer>();
...
int size = list.size();
for (Integer i : list) {
...
if (--size == 0) {
// Last item.
...
}
}

编辑

无论如何,正如 Tom Hawtin 所说,当您需要获取当前索引信息时,有时最好使用“旧”语法,方法是使用 for 循环或 iterator,因为你在使用 Java5 语法时赢得的一切都将在循环本身中丢失......

for (int i = 0; i < list.size(); i++) {
...

if (i == (list.size() - 1)) {
// Last item...
}
}

for (Iterator it = list.iterator(); it.hasNext(); ) {
...

if (!it.hasNext()) {
// Last item...
}
}

关于Java foreach 循环 : for (Integer i : list) { . .. },我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1818729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com