public class Liste { // public String hatErschlagen = ""; // private int deathToll = 0; // public String[] biester = new String[20]; private String biest = null; private Liste kette = null; public void erschlage(String monster){ Liste weiter = this; while (weiter.kette != null) { weiter = weiter.kette; } weiter.kette = new Liste(); weiter.kette.biest = monster; } public int getDeathToll(){ // AUFGABE 1 // - Durchhangeln durch .kette-Properties // (wie in erschlage() ) // - dabei einen Counter mitzählen // - den Zähler zurück geben return 0; } public String hatErschlagen() { // AUFGABE 2 // - Durchhangeln durch .kette-Properties // (wie in getDeathToll() ) // - dabei die .biest-Property an einen Rückgabe-String // anhängen // - den Rückgabe-String zurück geben // AUFGABE 3 // - zwischen den Werten steht ein ", " return ""; } public void vergesse(String monster){ } public String biestNr(int n) { return ""; } public static boolean test() { Liste hercules = new Liste(); Liste odysseus = new Liste(); hercules.erschlage("Hydra"); // biester[0] = "Hydra" hercules.erschlage("Löwe"); // biester[1] = "Löwe" hercules.erschlage("Minotaurus"); // biester[2] = "Minotaurus" hercules.erschlage("Nessos"); // biester[3] = "Nessos" odysseus.erschlage("Zyklop"); odysseus.erschlage("Circe"); assert(hercules.kette.biest.equals("Hydra")); assert(hercules.kette.kette.biest.equals("Löwe")); // AUFGABE 1 // int n; n = hercules.getDeathToll(); // assert( n == 4 ); // assert( odysseus.getDeathToll() == 2 ); // AUFGABE 2 // String biester = hercules.hatErschlagen(); // assert(biester.equals("HydraLöweMinotaurusNessos")); // AUFGABE 3 // (vorherige Assertion wieder auskommentieren) // assert( biester.equals("Hydra, Löwe, Minotaurus, Nessos") ); /* // String drittes = hercules.biester[2]; String drittes = hercules.biestNr(3); assert( drittes.equals("Minotaurus")); // assert( odysseus.biester[1].equals("Circe")); assert( odysseus.biestNr(2).equals("Circe")); hercules.vergesse("Hydra"); assert( hercules.biestNr(3).equals("Nessos")); assert( hercules.getDeathToll() == 3 ); assert( hercules.hatErschlagen().equals("Löwe, Minotaurus, Nessos") ); hercules.erschlage("Hydra"); assert( hercules.hatErschlagen().equals("Löwe, Minotaurus, Nessos, Hydra") ); hercules.erschlage("Medusa"); assert( hercules.getDeathToll() == 5 ); assert( hercules.hatErschlagen().equals("Löwe, Minotaurus, Nessos, Hydra, Medusa") ); */ System.out.println("Assertions successful!"); return true; } // Funktionsende kehrt immer zurück zur Stelle des Aufrufs public static void main(String[] args){ assert( test() ); } }