.NET 3.5 include o nouă clasă de colecție în spațiul de nume System.Collections.Generic: HashSet<T>. Această clasă de colecție conține o listă neordonată de elemente unice. Această mulțime se numește "mulțime". Set este un cuvânt rezervat, deci clasa are un alt nume, HashSet<T>. Numele este ușor de înțeles deoarece această colecție se bazează pe valori hash, iar inserarea elementelor este foarte rapidă și nu necesită <T>rearanjarea colecției ca la clasa List. Pregătim 3 colecții, iar obiectele din lista 1 nu sunt procesate. Obiectele din list2 suprascriu unele metode, iar list3 conține tipuri de șiruri
Codul este următorul:
1. Dacă valoarea codului hash nu este aceeași, înseamnă că este un element nou, store;
2,Dacă valoarea codului hash este aceeași și egalitățile sunt considerate egale, înseamnă că elementul există deja și nu există;
3. Dacă valoarea codului hash este aceeași și judecata Equles nu este egală, înseamnă că elementul nu există și există;
Folosim obiectul Test2, care suprascrie metodele egale și hashCode ale obiectului. Aici, să considerăm obiectul Test2 aceeași instanță atâta timp cât id și a sunt identice, iar desigur poate fi altceva, depinde de cerințele specifice
|