Esercizi C#

Filtrare tag senza ripetizioni con HashSet in C#

In questa lezione userai un HashSet per tenere solo tag distinti, ignorando la differenza tra maiuscole e minuscole.

Introduzione

HashSet<T> è una collezione che memorizza ogni valore una sola volta, ideale quando ti servono valori unici, come l'elenco dei tag di un articolo. L'HashSet verifica anche molto velocemente se un valore è già presente.

L'HashSet viene creato con il comparatore StringComparer.OrdinalIgnoreCase, quindi "C#" e "c#" contano come lo stesso tag. Inizializzandolo con tre valori, il tag ripetuto viene ignorato e l'insieme resta con 2 elementi. Senza questo comparatore, le due grafie diventerebbero tag diversi.

Guarda come funziona

Scegli un'operazione per evidenziarne il risultato nel diagramma. Aggiungi un valore già presente per vedere che i duplicati vengono ignorati.

Esempio C# eseguibile

C#
Esegui il codice →
Program.cs
using System;
using System.Collections.Generic;
class Program
{
    static void Main()
    {
        var tags = new HashSet<string>(StringComparer.OrdinalIgnoreCase) { "C#", "dotnet", "c#" };
        Console.WriteLine(tags.Count);
    }
}
Risultato dell'esecuzione
2

Esercitati con il debugger

Metti un breakpoint su un'assegnazione o una condizione importante, fai clic su Debug ed esamina i valori locali prima di passare alla riga successiva.

Esercitati con una sfida

Usa ciò che questa lezione spiega per risolvere un problema reale. Ogni sfida gira nel browser, con test immediati e una revisione dell'IA.

Tutte le sfide