Menu
Coddy logo textTech

Zusammenfassung - HashSet

Teil des Abschnitts Logik & Ablauf der Java-Journey von Coddy. Lektion 28 von 59.

challenge icon

Aufgabe

Einfach

Erstelle eine Methode namens processHashSet, die drei Argumente entgegennimmt:

  1. Ein HashSet<Object> (set)
  2. Ein Object (input), das verarbeitet werden soll
  3. Ein String (operation), der die auszuführende Operation angibt

Unter Verwendung von if/else-Anweisungen und der HashSet-Methoden, die du bereits kennengelernt hast, soll die Methode abhängig von operation einen String zurückgeben:

  • "add": Füge input zum Set hinzu. Gib "Added successfully" zurück, wenn es hinzugefügt wurde, oder "Element already exists", wenn es bereits im Set enthalten war.
  • "remove": Entferne input aus dem Set. Gib "Removed successfully" zurück, wenn es entfernt wurde, oder "Element not found", wenn es nicht im Set enthalten war.
  • "find": Gib "Found at index: [index]" zurück, wenn das Set input enthält (wobei [index] die Position des Elements in der Iterationsreihenfolge ist), andernfalls "Element not found".
  • "count": Gib "Number of elements: [count]" zurück, wobei [count] die Anzahl der Elemente im Set ist (verwende size()).

Überprüfe zunächst die Eingaben:

  • Wenn set null ist: Gib "Invalid set" zurück.
  • Wenn operation null ist oder keine der vier oben genannten Operationen ist: Gib "Invalid operation" zurück.
  • Für die Operation "find": Wenn input null ist, gib "Cannot find null" zurück.

Probier es selbst

import java.util.HashSet;
import java.util.Scanner;
import java.util.Arrays;

public class Main {
    public static String processHashSet(HashSet<Object> set, Object input, String operation) {
        // Schreibe deinen Code hier
    }
    
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        
        // Lese die initiale Menge
        String[] items = scanner.nextLine().split(",");
        HashSet<Object> set = new HashSet<>();
        if (!items[0].equals("empty")) {
            for (String item : items) {
                // Versuche zuerst als Integer zu parsen
                try {
                    set.add(Integer.parseInt(item));
                } catch (NumberFormatException e) {
                    set.add(item);
                }
            }
        }
        
        // Lese die Eingabe
        String inputStr = scanner.nextLine();
        Object input;
        try {
            input = Integer.parseInt(inputStr);
        } catch (NumberFormatException e) {
            input = inputStr;
        }
        
        // Lese die Operation
        String operation = scanner.nextLine();
        
        System.out.println(processHashSet(set, input, operation));
    }
}

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Online-Java-Compiler