みなさんおはようございます、
学校のプロジェクトで少し問題があります。ハッシュマップ上に列挙を実装するイテレータを作成するように指示されています。
だから私はこの列挙を作りました:
public Enumeration<Object> getEnumeration() {
return new Enumeration<Object>() {
private int itemsDone = 0;
Collection<Long> keysCollection = getContent().keySet();
Long [] keys = keysCollection.toArray(new Long[keysCollection.size()]);
@Override
public boolean hasMoreElements() {
if(itemsDone < getContent().size() +1 ) {
return true;
}else {
return false;
}
}
@Override
public Object nextElement() {
return getContent().get(keys[itemsDone++]);
}
};
}
これは私のバックパッククラスに行きます
public class Backpack extends Item implements Carrier, Enumeration<Object>{
ハッシュマップはgetContent()によって返されます。現在の問題は、Eclipseが列挙型のメソッドを実装していないことを通知し続けることです。クイックフィックスを使用すると、クラスにhasMoreElements()およびnextElement()ダミーメソッドが追加されるだけです。どういうわけか、内部クラスにこれらのメソッドが表示されません。
誰か助けてくれませんか?どんな助けでも大歓迎です。