Share via


Operazioni HashSet e sugli insiemi LINQ

Aggiornamento: novembre 2007

In questo argomento vengono confrontate le operazioni HashSet<T> con le operazioni sugli insiemi LINQ (Language-Integrated Query).

Operazioni sugli insiemi LINQ

LINQ provides access to some set operations to any data source that implements the IEnumerable or IQueryable interfaces. Ciò include matrici e raccolte.

Le operazioni sugli insiemi fornite da LINQ sono le seguenti:

  • Differenza

  • Unione

  • Intersezione

  • Esclusione

Per ulteriori informazioni su LINQ, vedere LINQ (Language-Integrated Query). Per ulteriori informazioni sulle operazioni sugli insiemi LINQ, vedere Operazioni sugli insiemi.

Quando utilizzare HashSet&lt;T&gt;

La differenza principale tra le operazioni sugli insiemi LINQ e le operazioni HashSet<T> è che le prime restituiscono sempre una nuova raccolta IEnumerable<T>, mentre i metodi HashSet<T> equivalenti modificano la raccolta corrente. HashSet<T> fornisce una raccolta più grande ed efficiente di operazioni sugli insiemi. Ad esempio, HashSet<T> fornisce confronti quali IsSubsetOf e IsSupersetOf.

Se in genere è necessario creare un nuovo insieme o accedere solo alle operazioni sugli insiemi fornite, sarà sufficiente utilizzare le operazioni sugli insiemi LINQ in una raccolta o matrice IEnumerable<T>. Se invece è necessario accedere ad altre operazioni sugli insiemi o se non si desidera o non è necessario creare una nuova raccolta, utilizzare la classe HashSet<T>.

Operazioni HashSet&lt;T&gt; e sugli insiemi LINQ

Nella tabella riportata di seguito vengono illustrate le operazioni HashSet<T> e le relative operazioni sugli insiemi LINQ equivalenti.

Operazione HashSet(Of T)

Equivalente LINQ

UnionWith

Union

IntersectWith

Intersect

ExceptWith

Except

Non fornito

Distinct

SymmetricExceptWith

Non fornito

Overlaps

Non fornito

IsSubsetOf

Non fornito

IsProperSubsetOf

Non fornito

IsSupersetOf

Non fornito

IsProperSupersetOf

Non fornito

SetEquals

Non fornito

Vedere anche

Concetti

Tipo di raccolta HashSet

Operazioni sugli insiemi

Riferimenti

HashSet<T>

Altre risorse

LINQ (Language-Integrated Query)

Tipi di insieme comunemente utilizzati