gpt4 book ai didi

java - Java 'for each' 循环如何工作?

转载 作者:太空宇宙 更新时间:2023-11-04 13:10:55 25 4
gpt4 key购买 nike

考虑:

List<String> someList = new ArrayList<String>();
// add "monkey", "donkey", "skeleton key" to someList
for (String item : someList) {
System.out.println(item);
}

如果不使用 foreach 语法,等效的 for 循环会是什么样子?

最佳答案

for (Iterator<String> i = someIterable.iterator(); i.hasNext();) {
String item = i.next();
System.out.println(item);
}

请注意,如果您需要在循环中使用 i.remove();,或者以某种方式访问​​实际的迭代器,则不能使用 for ( : ) 习惯用法,因为实际的迭代器只是推断出来的。

正如 Denis Bueno 所指出的,此代码适用于任何实现 Iterable interface 的对象。 .

此外,如果 for (:) 习惯用法的右侧是 array 而不是 Iterable 对象,则内部代码将使用 int 索引计数器并检查 array.length 。请参阅Java Language Specification .

关于java - Java 'for each' 循环如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33963822/

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