Hallo,
bei der Bearbeitung einer Aufgabe komme ich überhaupt nicht weiter. Sie lautet:Implementieren Sie in PersonListDoubleIterator den bereits definierten Konstruktor sowie die beiden angegebenen Methoden hasNext() und next(). Es soll erreicht werden,dass AppTestPersonListDoubleIterator die angegebene Konsolenausgabe
produziert.
ACHTUNG: Ändern Sie dafür nur die Klasse PersonListDoubleIterator
In dieser Klasse werden Sie Hilfsattribute benötigen, um die doppelte Ausgabe jeder Person
aus der PersonList zu erreichen.
Die Ausgabe soll jedes Element 2 mal ausgeben. Das Grundkonstrukt stimmt soweit auch und ich bekomme eine einfache Ausgabe heraus. Aber wie ich alles Doppelt ausgeben kann weis ich nicht. Es folgt meine Klasse, die Kommentare waren in der Aufgabenstellung. Meine Lösungsansatz liegt in den for schleifen bei hasNext() und next().
bei der Bearbeitung einer Aufgabe komme ich überhaupt nicht weiter. Sie lautet:Implementieren Sie in PersonListDoubleIterator den bereits definierten Konstruktor sowie die beiden angegebenen Methoden hasNext() und next(). Es soll erreicht werden,dass AppTestPersonListDoubleIterator die angegebene Konsolenausgabe
produziert.
ACHTUNG: Ändern Sie dafür nur die Klasse PersonListDoubleIterator
In dieser Klasse werden Sie Hilfsattribute benötigen, um die doppelte Ausgabe jeder Person
aus der PersonList zu erreichen.
Die Ausgabe soll jedes Element 2 mal ausgeben. Das Grundkonstrukt stimmt soweit auch und ich bekomme eine einfache Ausgabe heraus. Aber wie ich alles Doppelt ausgeben kann weis ich nicht. Es folgt meine Klasse, die Kommentare waren in der Aufgabenstellung. Meine Lösungsansatz liegt in den for schleifen bei hasNext() und next().
Java:
import java.util.ArrayList;
import java.util.Iterator;
import java.util.NoSuchElementException;
// ACHTUNG: Nur in dieser Klasse m�ssen Sie etwas �ndern
// Ziel: hasNext und next sollen sinnvolle R�ckgabewerte haben, damit man mit der erweiterten For-Schleife �ber PesonLists iterieren (also �ber jedes Element zweimal "gehen") kann
public class PersonListDoubleIterator implements Iterator {
// Welche Attribute werden ben�tigt?
PersonList Person = new PersonList();
int pos=0;
public PersonListDoubleIterator(PersonList persList) {
// Was muss im Konstruktor passieren?
this.Person = persList;
}
public boolean hasNext() {
for(int i = 0; i<4; i++) {
if(pos < Person.size()) {
return true;
}
}
return false; // Achtung: dies ist eine Standardr�ckgabe und noch falsch! Hier muss die Logik implementiert werden.
}
public Object next() {
for(int i=0;i<2;i++) {
if(hasNext()) {
return this.Person.get(pos++);
}
}
throw new NoSuchElementException(); // Achtung: dies ist eine Standardr�ckgabe und noch falsch! Hier muss die Logik implementiert werden.
}
}