CodeGym
Aktion
CodeGym University
Lernen
Kurs
Aufgaben
Umfragen & Quizze
Spiele
Hilfe
Zeitplan für einen Tritt in den Hintern
Community
Benutzer
Forum
Chat
Artikel
Erfolgsstorys
Aktivität
Rezensionen
Abonnements
Helles Design
Frage
  • Rezensionen
  • Über uns
Start
Jetzt lernen
Jetzt lernen
  • Alle Fragen
hidden #10625598
Level 23
  • 27.05.2020
  • 233Aufrufe
  • 1Kommentar

wo ist der fehler?

Frage zur Aufgabe Zehn Katzen
Java Syntax,  Level 9,  Lektion 11
Gelöst


Es gibt eine Katze-Klasse mit einer String-Variable name.
Erstelle eine Map<String, Katze> und füge 10 Katzen repräsentiert durch (name, Katze)-Paare hinzu.
Rufe ein Set aller Katzen aus der Map ab und zeige es auf dem Bildschirm an.

Anforderungen:
  • Das Programm darf keine Daten von der Tastatur lesen.
  • Die Methode mapErstellen muss ein neues HashMap<String, Katze>-Objekt erstellen.
  • Die Methode mapErstellen muss 10 Katzen zur Map hinzufügen, repräsentiert durch (name, Katze)-Paare.
  • Die Methode mapErstellen muss die erstellte Map zurückgeben.
  • Die Methode mapInSetUmwandeln muss das Katzen-Set erstellen und zurückgeben, das aus der übergebenen Map abgerufen wurde.
  • Das Programm muss alle Katzen im Set anzeigen.
package de.codegym.task.task09.task0927; import java.util.*; import java.util.HashSet; import java.util.Map; import java.util.Set; /* Zehn Katzen */ public class Solution { public static void main(String[] args) { Map<String, Katze> map = mapErstellen(); Set<Katze> set = mapInSetUmwandeln(map); katzenSetAusdrucken(set); } public static Map<String, Katze> mapErstellen() { //schreib hier deinen Code HashMap<String, Katze> namKat = new HashMap<>(); namKat.put("one", new Katze("one")); namKat.put("two", new Katze("two")); namKat.put("three", new Katze("three")); namKat.put("four", new Katze("four")); namKat.put("five", new Katze("five")); namKat.put("six", new Katze("six")); namKat.put("seven", new Katze("seven")); namKat.put("eight", new Katze("eight")); namKat.put("nine", new Katze("nine")); namKat.put("ten", new Katze("ten")); return namKat; } public static Set<Katze> mapInSetUmwandeln(Map<String, Katze> map) { //schreib hier deinen Code HashSet<Katze> set2 = new HashSet<>(); Iterator it = map.entrySet().iterator(); while(it.hasNext()){ Map.Entry paar = (Map.Entry)it.next(); set2.add(paar.getValue()); } return set2; } public static void katzenSetAusdrucken(Set<Katze> set) { for (Katze katze : set) { System.out.println(katze); } } public static class Katze { private String name; public Katze(String name) { this.name = name; } public String toString() { return "Katze " + this.name; } } }
0
Kommentare (1)
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Thomas
Level 34 , Bayreuth, Germany
27 Mai 2020, 16:46
Der Iterator ist generell, du hast ihm keinen Typen gegeben (Zeile 43). Gleiches für Map.Entry in Zeile 46. Ich tippe mal, sollte tatsächlich was bei paar.getValue() geholt werden, dass es vom Typ Object ist und nicht zum Set hinzugefügt werden kann (da das ja nur Katze nimmt)
+1
Lernen
  • Registrierung
  • Java-Kurs
  • Hilfe zu Aufgaben
  • Preise
  • Spieleprojekte
  • Java Syntax
Community
  • Benutzer
  • Artikel
  • Forum
  • Chat
  • Erfolgsstorys
  • Aktivität
  • Affiliate Program
Unternehmen
  • Über uns
  • Kontakt
  • Rezensionen
  • Medien
  • CodeGym im Bildungsbereich
  • FAQ
  • Support
CodeGym CodeGym ist ein Java-Tutorial zum Lernen von Java von Grund auf. Dieser Kurs ist perfekt dafür geeignet, Java von Beginn an zu meistern. Er enthält über 1200 Aufgaben mit Sofortüberprüfung und grundlegende Theorie zu den Java-Grundlagen. Damit auch du bei deinem Kurs erfolgreich bist, haben wir eine ganze Reihe motivierender Inhalte: Quizfragen, Programmierprojekte, Inhalte zu effizientem Lernen und zum Berufseinstieg als Java-Entwickler.
Folgen
Sprache der Oberfläche
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
MastercardVisa
Programmierer werden gemacht, nicht geboren © 2023 CodeGym
This website uses cookies to provide you with personalized service. By using this website, you agree to our use of cookies. If you require more details, please read our Terms and Policy.