Java 我怎样才能成为一个好的迭代器
有人知道这个代码吗?问题出在哪里Java 我怎样才能成为一个好的迭代器,java,iterator,Java,Iterator,有人知道这个代码吗?问题出在哪里 import java.util.Iterator; import java.util.NoSuchElementException; public class AlbumIterator implements Iterator<Fotoablum>{ Fotoalbum album; Foto aktuell; public AlbumIterator(Fotoalbum album){ this
import java.util.Iterator;
import java.util.NoSuchElementException;
public class AlbumIterator implements Iterator<Fotoablum>{
Fotoalbum album;
Foto aktuell;
public AlbumIterator(Fotoalbum album){
this.album=album;
this.aktuell=aktuell;
}
public boolean hasNext(){
if(this.aktuell == null){
return true;
}else{
return this.aktuell.getNächstes() != null;
}
}
public Foto next(){
if(this.aktuell == null){
this.aktuell = this.ablum.erstesFoto;
return this.aktuell;
}
if(this.aktuell.getNächstes() == null){
throw new NoSuchElementException("Keine weiteren Elemente vorhanden");
}else{
this.aktuell = this.aktuell.getNächstes();
return this.aktuell;
}
}
public void remove() {
throw new UnsupportedOperationException("Diese Aktion wird nicht unterstützt.");
}
public static void main(String[] args){
return;
}
}
错误消息
AlbumIterator.java:5: error: cannot find symbol
public class AlbumIterator implements Iterator<Fotoablum>{
^
symbol: class Fotoablum
AlbumIterator.java:22: error: cannot find symbol
this.aktuell = this.ablum.erstesFoto;
^
symbol: variable ablum
这是一篇关于java迭代器的家庭作业。我尝试了很多次,但仍然是错误的,我如何使它工作,我需要一个主函数吗?一个使用流的更简单的解决方案
您可以省去麻烦,从流中创建一个:
迭代器=
Stream.iterate
album.erstesFoto,
f->f.getNächstes!=无效的
f->f.getNächstes
.迭代器;
您的具体编译问题
同样的输入错误,这次是局部变量。大多数现代Java IDE都可以自动修复您收到的错误消息。似乎有输入错误。Fotoablum应该是Fotoalbum,而this.ablum应该是this.album。确保你确实阅读了错误信息并进行了研究,这比在这里询问要快得多。没有@LukasEder,但错误的第一步提到第一步是检查打字错误,因此阅读和研究可能会找到解决方案。注意第三行和第四行,如果你使用IDE之类的IntelliJ IDEA,就可以避免这种类型的错误。事实上,当你的答案只有建议时,我投了反对票。我想你当时已经在宽限期内编辑过了,所以很不幸,我不能撤回我的投票,因为答案在技术上还没有被编辑过。如果可以的话,我很乐意收回。我们不允许使用Stream来解决这个问题,但谢谢
AlbumIterator.java:5: error: cannot find symbol
public class AlbumIterator implements Iterator<Fotoablum>{
^
symbol: class Fotoablum
AlbumIterator.java:22: error: cannot find symbol
this.aktuell = this.ablum.erstesFoto;
^
symbol: variable ablum