我在創建的迭代器上遇到了語法問題。我會使用for-each循環,除了我需要編輯我將從該循環中取出的元素。我創建了一個名爲玩家的類,它在紙牌遊戲中創建一個4手名單(手是另一個代表單個玩家的類)。我正在嘗試爲這個類創建一個迭代器,這給我帶來了麻煩。我的實現如下:聲明迭代器
public class Players
{ ....
public class PlayerIterator implements Iterator<Hand>
{
private final Iterator<Hand> iterator;
private PlayerIterator()
{
this.iterator = players.iterator();
}
....
}
}
據我所知,我的實現似乎是正確的基礎上,我還沒有在Eclipse中收到任何錯誤的情況。然而,我在實際程序中聲明迭代器時遇到了麻煩。我將如何聲明這樣的迭代器?
眼下這是給我的錯誤:
Iterator<Hand> it = Players.PlayerIterator();
- 手:類變量我循環通過:4手
- 球員名單:即構建的列表中的類雙手包含迭代器實現
- PlayerIterator:實現迭代
這有道理嗎?我對迭代器有一個非常寬泛的把握,所以如果我沒有提供足夠的信息,我可以輕鬆創建更多。
「現在這是給我的錯誤」 - >有什麼錯誤?我們無法讀懂你的想法。 – awksp
這不是對'Iterator'的鬆散掌握,它是Java中嵌套類的鬆散掌握。閱讀[教程](http://docs.oracle.com/javase/tutorial/java/javaOO/nested.html)。 –
@ user3580294對不起,它說「玩家」類的方法「PlayerIterator」未定義。它認爲我真的在試圖聲明迭代器時調用方法 –