簡體   English   中英

為什么iterator.next()每次都返回相同的項目?

[英]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(); 一遍又一遍地返回相同的項目。 即使有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();
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM