Bildschirmausgabe:
katze1
katze3
katze2
katze1
katze3
1.Schritt: Ich habe eine public static class Katze erstellt und ich habe dazu einen Constructor erstellt.
2. Schritt: Ich habe in diesem Schritt 3 Katzenobjekte erstellt und ich habe diese dem neuen Set hinzugefügt.
3. Schritt: 1. Ich habe die Methode Set erstellen aufgerufen.
2. Ich habe das Set ausgedruckt.
3. Ich habe über einen Iterator das letzte Element aus dem Set entfernt.
4. Ich habe das neue Set ausgedruckt.
4. Schritt: Ich habe eine Methode erstellt, die die Namen der Objekte des Sets ausdruckt.
Trotzdem hat mir die Validierung 3 unerfüllte Tasks zurückgemeldet.
Ich komme einfach nicht weiter. Kann mir bitte einer sagen, was falsch ist.
Schon ein großes Dankeschön im Voraus.
package de.codegym.task.task08.task0819;
import java.lang.reflect.Array;
import java.util.HashSet;
import java.util.Iterator;
import java.util.Objects;
import java.util.Set;
/*
Ein Katzen-Set
*/
public class Solution {
public static void main(String[] args) {
Set<Katze> katzen = katzenErstellen();
katzenAusdrucken(katzen);
//schreib hier deinen Code. Schritt 3
Iterator<Katze> itr = katzen.iterator();
//Returns true if there are more number of elements.
while(itr.hasNext()) {
//Returns the next element.
itr.next();
}
//Removes the last element.
itr.remove();
katzenAusdrucken(katzen);
}
public static Set<Katze> katzenErstellen() {
//schreib hier deinen Code. Schritt 2
Katze katze1 = new Katze ("katze1");
Katze katze2 = new Katze ("katze2");
Katze katze3 = new Katze ("katze3");
Set <Katze> katzen = new HashSet <> ();
katzen.add(katze1);
katzen.add(katze2);
katzen.add(katze3);
return katzen;
}
public static void katzenAusdrucken(Set<Katze> katzen) {
// Schritt 4
for (Katze x : katzen) {
String y = x.name;
System.out.println(y);
}
}
// Schritt 1
public static class Katze {
String name;
public Katze(String name) {
this.name = name;
}
}
}