Menu
Coddy logo textTech

Ein Element entfernen

Teil des Abschnitts Logik & Ablauf der C#-Journey von Coddy. Lektion 58 von 66.

Die Methode Remove(element) entfernt das angegebene Element aus dem HashSet, sofern es vorhanden ist. Diese Methode gibt true zurück, wenn das Element erfolgreich entfernt wurde, und false, wenn das Element im Set nicht gefunden wurde.

Erstelle ein leeres HashSet:

HashSet<string> fruits = new HashSet<string>();

Fügen Sie einige Elemente zum Set hinzu:

fruits.Add("Apple");
fruits.Add("Banana");
fruits.Add("Cherry");

Nach der Ausführung des obigen Codes enthält die Menge fruits:

["Apple", "Banana", "Cherry"]

Entferne nun „Banana“ aus der Menge:

bool wasRemoved = fruits.Remove("Banana");

Nach dem Entfernen enthält das Set:

["Apple", "Cherry"]

Der Wert von wasRemoved wird true sein, weil „Banana“ gefunden und entfernt wurde.

Wenn wir versuchen, ein Element zu entfernen, das nicht existiert:

bool wasRemoved = fruits.Remove("Orange");

Die Menge bleibt unverändert, und wasRemoved wird false sein.

challenge icon

Aufgabe

Einfach

Erstelle eine Methode namens RemoveElement, die zwei Argumente entgegennimmt:

  1. Ein HashSet von Zeichenfolgen (set)
  2. Eine zu entfernende Zeichenfolge (element)

Die Methode soll versuchen, das angegebene Element aus dem Set zu entfernen. Wenn das Element erfolgreich entfernt wurde, gib "Element removed: True" aus, andernfalls gib "Element removed: False" aus. Gib anschließend das aktualisierte Set in einer neuen Zeile aus.

Probier es selbst

using System;
using System.Collections.Generic;
using System.Text.RegularExpressions;

public class Program
{
    public static void RemoveElement(HashSet<string> set, string element)
    {
        // Schreibe deinen Code hier
    }
    
    public static void Main()
    {
        HashSet<string> set = new HashSet<string>();
        
        // Read first line to check if it's JSON format
        string firstLine = Console.ReadLine();
        string elementToRemove;
        
        // Check if input is in JSON array format
        if (firstLine != null && firstLine.StartsWith("[") && firstLine.EndsWith("]"))
        {
            try
            {
                // Extract content between square brackets
                string arrayContent = firstLine.Substring(1, firstLine.Length - 2);
                
                // Use regex to match all quoted strings
                MatchCollection matches = Regex.Matches(arrayContent, @"""([^""]*)""");
                
                foreach (Match match in matches)
                {
                    // Add the captured group (without quotes)
                    if (match.Groups.Count > 1)
                    {
                        set.Add(match.Groups[1].Value.Trim());
                    }
                }
                
                // Read second line for element to remove
                string secondLine = Console.ReadLine();
                
                // Check if element is in JSON string format
                Match elementMatch = Regex.Match(secondLine, @"""([^""]*)""");
                if (elementMatch.Success && elementMatch.Groups.Count > 1)
                {
                    elementToRemove = elementMatch.Groups[1].Value;
                }
                else
                {
                    elementToRemove = secondLine;
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine($"Error parsing JSON input: {ex.Message}");
                return;
            }
        }
        else
        {
            // Process traditional input format
            string[] elements = firstLine.Split(',');
            foreach (string element in elements)
            {
                set.Add(element.Trim());
            }
            
            // Read element to remove in traditional format
            elementToRemove = Console.ReadLine();
        }
        
        RemoveElement(set, elementToRemove);
    }
}
quiz iconTeste dich selbst

Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.

Alle Lektionen in Logik & Ablauf

Übe selbstständig: Online-C#-Compiler