Eclipse Test zeigt Fehler an beim Iterator und ich weiß nicht wie ich es verbessern soll

EmmaM95

Mitglied
Die Aufgabe sieht so aus:
Es soll die Methode public String toString() aus der Klasse java.lang.Object überschrieben werden,
sodass eine übersichtliche Auflistung aller Einträge nach Auto sortiert ausgegeben wird.
Nach jedem Eintrag für ein Auto soll eine Leerzeile ausgegeben werden. Ist ein Auto ohne
Einträge im Fahrtenbuch vorhanden, so soll eine Leerzeile als Platzhalter für die Einträge ausgeben werden. Nach dem letzten Eintrag soll keine Leerzeile ausgegben werden.
Java:
public String toString() {

		String erg = "";

		Collections.sort(car, new CarByDescriptionComparator());
		
		
		Iterator<Car> it = getCars().iterator();
		while (it.hasNext()) {
			Car aktuell = it.next();
			erg = erg + aktuell.toString() + ":" + "\n";
			
			

			String erg1 = "";

			List<Entry> entries = (List<Entry>) getEntries(aktuell);
			Collections.sort(entries, new EntryByDateComparator());

			Iterator<Entry> iter = entries.iterator();
			while (iter.hasNext()) {
				Entry aktuelle = iter.next();
			
				{
					erg1 = erg1 + aktuelle.toString()+"\n";
					
				}
				
			}
			erg = erg + erg1;
			
			
			if (it.hasNext()) {
				if (getEntries(aktuell).size() == 0) {
					erg1 = "\n";
				}

				
				erg = erg + "\n";
			}
		

		}

		return erg;

	}

Das Problem ist jetzt : Ich weiß nicht wie ich überprüfe, ob es sich bei dem Eintrag um den letzten Eintrag handelt.
 

Gucky

Top Contributor
Ich glaube, ein Iterator ist dafür nicht die beste Möglichkeit. Da du car hast, kannst du auch einfach mit einer for-Schleife darüber iterieren.
 

Oben