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
  • 21.05.2020
  • 519Aufrufe
  • 5Kommentare

wo ist oder sind meine Fehler?

Frage zur Aufgabe Größer als 10? Du passt nicht gut zu uns
Java Syntax,  Level 8,  Lektion 8
Gelöst


Erstelle ein Set von Zahlen (Set<Integer>) und füge ihm 20 verschiedene Zahlen hinzu.
Entferne aus dem Set alle Zahlen, die größer als 10 sind.

Anforderungen:
  • Das Programm darf keinen Text auf dem Bildschirm anzeigen.
  • Das Programm darf keine Werte von der Tastatur lesen.
  • Die Solution-Klasse darf nur drei Methoden enthalten.
  • Die Methode setErstellen() muss ein HashSet mit 20 verschiedenen Zahlen erstellen und zurückgeben.
  • Die Methode alleZahlenGroesserAls10Entfernen() muss alle Zahlen größer als 10 aus dem Set entfernen.
package de.codegym.task.task08.task0814; import java.util.HashSet; import java.util.Set; /* Größer als 10? Du passt nicht gut zu uns */ public class Solution { public static HashSet<Integer> setErstellen() { // schreib hier deinen Code HashSet<Integer> liste = new HashSet<>(); for(int i = 0; i < 20; i++){ liste.add(i); } alleZahlenGroesserAls10Entfernen(liste); return liste; } public static HashSet<Integer> alleZahlenGroesserAls10Entfernen(HashSet<Integer> set) { // schreib hier deinen Code HashSet<Integer> intern = set; for(int i = 0; i < 20; i++){ if(intern.get(i) > 10){ intern.remove(intern.get(i)); } } return intern; } public static void main(String[] args) { } }
0
Kommentare (5)
  • Beliebt
  • Neu
  • Alt
Du musst angemeldet sein, um einen Kommentar schreiben zu können
Thomas
Level 34 , Bayreuth, Germany
21 Mai 2020, 21:25
Wenn innerhalb einer Schleife aus Collections gelöscht werden soll, sollte man immer einen Iterator verändern. Und eigentlich nicht nur beim Löschen, sondern immer wenn sich die Größe der Collection ändert. Die Schleife bekommt nicht mit, dass sich die Größe ändert und damit bist du immer am Rande einer Exception. Das gilt auch, wenn du statt 20 z.B. intern.size() verwenden würdest. Zur Not könntest du die Schleife bei 20 beginnen lassen und dann herunterzählen.
0
hidden #10625598
Level 23
22 Mai 2020, 10:17
oha, wie müsste das denn aussehen? diese hier funktioniert nur mit einem String: Iterator<Integer> iterator = intern.iterator(); while(iterator.hasNext()){ int zahl= iterator.next(); if(zahl > 10){ remove(text); } }
0
Thomas
Level 34 , Bayreuth, Germany
22 Mai 2020, 10:29
so irgendwie
Iterator<Integer> iterator = set.iterator();
while(iterator.hasNext())
    if (iterator.next() > 10) iterator.remove();
0
hidden #10625598
Level 23
22 Mai 2020, 10:33
genau, danke. und den import java.util.Iterator nicht vergessen
0
Thomas
Level 34 , Bayreuth, Germany
22 Mai 2020, 11:08
Nimm doch eine IDE, die übernimmt solche Sachen für dich.
0
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.