为什么 iterator.next() returns 每次都是相同的项目?
why iterator.next() returns the same item every time?
我有这个代码:
for (int j = 0; j < 7; j++) {
if (failureCountAndDUrls.urls.iterator().hasNext()) {
P p2 = new P().appendText("First "+min+" of "+failureCountAndDUrls.count+":");
String id = failureCountAndDUrls.urls.iterator().next();
}
}
urls
是一个 Set<String>
还有 .next();
returns 一遍又一遍地使用相同的项目。尽管有 7 项
如何正确迭代所有项目?
问题是您每次都在创建一个新迭代器,并且每个新迭代器都具有相同的初始状态。
改用迭代器。
Iterator<String> it = failureCountAndDUrls.urls.iterator();
for (int j = 0; j < 7; j++) {
if (it.hasNext()) {
P p2 = new P().appendText("First "+min+" of "+failureCountAndDUrls.count+":");
String id = it.next();
}
}
我有这个代码:
for (int j = 0; j < 7; j++) {
if (failureCountAndDUrls.urls.iterator().hasNext()) {
P p2 = new P().appendText("First "+min+" of "+failureCountAndDUrls.count+":");
String id = failureCountAndDUrls.urls.iterator().next();
}
}
urls
是一个 Set<String>
还有 .next();
returns 一遍又一遍地使用相同的项目。尽管有 7 项
如何正确迭代所有项目?
问题是您每次都在创建一个新迭代器,并且每个新迭代器都具有相同的初始状态。
改用迭代器。
Iterator<String> it = failureCountAndDUrls.urls.iterator();
for (int j = 0; j < 7; j++) {
if (it.hasNext()) {
P p2 = new P().appendText("First "+min+" of "+failureCountAndDUrls.count+":");
String id = it.next();
}
}