[英]java creating an iterator for a custom data structure
所以這就是我所擁有的:
ArraySet
和ListSet
因此在Set中,我聲明了Iterator <String> iterator();
然后我在2班非抽象的,我有嵌套它們被稱為類ArrayIterator
和ListIterator
,它實現了迭代器的功能。 但是編譯器抱怨ArraySet
和ListSet
必須實現Set.iterator()
。 如何讓這個編譯器承認ArrayIterator
和ListIterator
是的實現Set.iterator()
所以看起來
interface Set extends Iterable< String > {
...
Iterator< String > iterator(); }
class ArraySet extends AbstractClass {
...
class ArrayIterator implements Iterator< String > { ... }
...
}
您需要在非抽象類ArraySet
和ListSet
實現Set.iterator()
,即:
在ArraySet
:
Iterator<String> iterator() {
// do something, probably return ArrayIterator ?
}
在ListSet
:
Iterator<String> iterator() {
// do something, probably return ListIterator ?
}
另外,我假定這兩個ArrayIterator
和ListIterator
實現Iterator
我知道這不是您問題的直接答案。 但是,僅出於了解的目的,您可能想知道什么是內部迭代器,什么是外部迭代器? 參考:GoF設計模式書
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.