Questo articolo è stato tradotto automaticamente. Per visualizzare l'articolo in inglese, selezionare la casella di controllo Inglese. È possibile anche visualizzare il testo inglese in una finestra popup posizionando il puntatore del mouse sopra il testo.
Traduzione
Inglese

Classe Tuple<T1, T2, T3, T4, T5, T6, T7>

 

Data di pubblicazione: ottobre 2016

Rappresenta una tupla con 7 elementi, ovvero una settupla.

Spazio dei nomi:   System
Assembly:  mscorlib (in mscorlib.dll)

System.Object
  System.Tuple<T1, T2, T3, T4, T5, T6, T7>

[SerializableAttribute]
public class Tuple<T1, T2, T3, T4, T5, T6, T7> : IStructuralEquatable, 
	IStructuralComparable, IComparable

Parametri tipo

T1

Tipo del primo componente della tupla.

T2

Tipo del secondo componente della tupla.

T3

Il tipo del terzo componente della tupla.

T4

Il tipo del quarto componente della tupla.

T5

Il tipo del quinto componente della tupla.

T6

Il tipo del sesto componente della tupla.

T7

Il tipo del settimo componente della tupla.

NomeDescrizione
System_CAPS_pubmethodTuple<T1, T2, T3, T4, T5, T6, T7>(T1, T2, T3, T4, T5, T6, T7)

Inizializza una nuova istanza della classe Tuple<T1, T2, T3, T4, T5, T6, T7>.

NomeDescrizione
System_CAPS_pubpropertyItem1

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> primo componente dell'oggetto.

System_CAPS_pubpropertyItem2

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> secondo componente dell'oggetto.

System_CAPS_pubpropertyItem3

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> terzo componente dell'oggetto.

System_CAPS_pubpropertyItem4

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> quarto componente dell'oggetto.

System_CAPS_pubpropertyItem5

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> quinto componente dell'oggetto.

System_CAPS_pubpropertyItem6

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> sesto componente dell'oggetto.

System_CAPS_pubpropertyItem7

Ottiene il valore dell'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> settimo componente dell'oggetto.

NomeDescrizione
System_CAPS_pubmethodEquals(Object)

Restituisce un valore che indica se l'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto è uguale all'oggetto specificato.(Esegue l'override di Object.Equals(Object).)

System_CAPS_protmethodFinalize()

Consente a un oggetto di provare a liberare risorse ed eseguire altre operazioni di pulizia prima che l'oggetto stesso venga reclamato dalla procedura di Garbage Collection. (Ereditato da Object.)

System_CAPS_pubmethodGetHashCode()

Restituisce il codice hash per l'oggetto Tuple<T1, T2, T3, T4, T5, T6, T7> corrente.(Esegue l'override di Object.GetHashCode().)

System_CAPS_pubmethodGetType()

Ottiene l'oggetto Type dell'istanza corrente.(Ereditato da Object.)

System_CAPS_protmethodMemberwiseClone()

Crea una copia superficiale dell'oggetto Object corrente.(Ereditato da Object.)

System_CAPS_pubmethodToString()

Restituisce una stringa che rappresenta il valore di questo Tuple<T1, T2, T3, T4, T5, T6, T7> istanza.(Esegue l'override di Object.ToString().)

NomeDescrizione
System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralComparable.CompareTo(Object, IComparer)

Confronta l'oggetto Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto a un oggetto specificato utilizzando un operatore di confronto specificato e restituisce un intero che indica se l'oggetto corrente è precedente, successiva o nella stessa posizione dell'oggetto specificato nell'ordinamento.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralEquatable.Equals(Object, IEqualityComparer)

Restituisce un valore che indica se l'oggetto corrente Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto è uguale all'oggetto specificato in base a un metodo di confronto specificato.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralEquatable.GetHashCode(IEqualityComparer)

Calcola il codice hash per l'oggetto Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto utilizzando un metodo di calcolo specificato.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIComparable.CompareTo(Object)

Confronta l'oggetto Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto a un oggetto specificato e restituisce un intero che indica se l'oggetto corrente è prima, dopo o nella stessa posizione dell'oggetto specificato nell'ordinamento.

Una tupla è una struttura di dati con un numero specifico e la sequenza di valori. La Tuple<T1, T2, T3, T4, T5, T6, T7> classe rappresenta una tupla con 7 elementi o settupla, ovvero una tupla con sette componenti.

È possibile creare un'istanza di un Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto chiamando il Tuple<T1, T2, T3, T4, T5, T6, T7> o statico Tuple.Create<T1, T2, T3, T4, T5, T6, T7>(T1, T2, T3, T4, T5, T6, T7) (metodo). È possibile recuperare il valore di componenti della tupla utilizzando la proprietà di sola lettura Item1, Item2, Item3, Item4, Item5, Item6, e Item7 delle proprietà dell'istanza.

Le tuple sono comunemente utilizzate in quattro modi diversi:

  • Per rappresentare un singolo set di dati. Ad esempio, una tupla può rappresentare un record di database e i componenti possono rappresentare i singoli campi del record.

  • Per fornire facile accesso e la manipolazione di un set di dati. L'esempio seguente definisce un Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto che contiene i dati della popolazione di New York City per ogni censimento dal 1950 al 2000. La settupla viene passata per il ComputePopulationChange metodo, che calcola il tasso di modifica tra censimenti, il tasso di modifica per il periodo di 60 anni annuale annuale.

    using System;
    
    public class Example
    {
       public static void Main()
       {
          // Get population data for New York City, 1950-2000.
          var population = Tuple.Create("New York", 7891957, 7781984, 
                                        7894862, 7071639, 7322564, 8008278);
          var rate = ComputePopulationChange(population);
          // Display results.
          Console.WriteLine("Population Change, {0}, 1950-2000\n", population.Item1);
          Console.WriteLine("Year      {0,10} {1,9}", "Population", "Annual Rate");
          Console.WriteLine("1950      {0,10:N0} {1,11}", population.Item2, "NA");
          Console.WriteLine("1960      {0,10:N0} {1,11:P2}", population.Item3, rate.Item2/10);
          Console.WriteLine("1970      {0,10:N0} {1,11:P2}", population.Item4, rate.Item3/10);
          Console.WriteLine("1980      {0,10:N0} {1,11:P2}", population.Item5, rate.Item4/10);
          Console.WriteLine("1990      {0,10:N0} {1,11:P2}", population.Item6, rate.Item5/10);
          Console.WriteLine("2000      {0,10:N0} {1,11:P2}", population.Item7, rate.Item6/10);
          Console.WriteLine("1950-2000 {0,10:N0} {1,11:P2}", "", rate.Item7/50);
       }
    
       private static Tuple<string, double, double, double, double, double, double> 
            ComputePopulationChange(
               Tuple<string, int, int, int, int, int, int> data)  
       {           
          var rate = Tuple.Create(data.Item1, 
                           (double)(data.Item3 - data.Item2)/data.Item2, 
                           (double)(data.Item4 - data.Item3)/data.Item3, 
                           (double)(data.Item5 - data.Item4)/data.Item4, 
                           (double)(data.Item6 - data.Item5)/data.Item5,
                           (double)(data.Item7 - data.Item6)/data.Item6,
                           (double)(data.Item7 - data.Item2)/data.Item2 );
          return rate;
       }           
    }
    // The example displays the following output:
    //       Population Change, New York, 1950-2000
    //       
    //       Year      Population Annual Rate
    //       1950       7,891,957          NA
    //       1960       7,781,984     -0.14 %
    //       1970       7,894,862      0.15 %
    //       1980       7,071,639     -1.04 %
    //       1990       7,322,564      0.35 %
    //       2000       8,008,278      0.94 %
    //       1950-2000                 0.03 %
    
  • Per restituire più valori da un metodo senza l'utilizzo di out parametri (c#) o ByRef parametri (in Visual Basic). Ad esempio, l'esempio precedente restituisce le statistiche calcolate, insieme al nome di città, in un Tuple<T1, T2, T3, T4, T5, T6, T7> oggetto.

  • Per passare più valori a un metodo tramite un singolo parametro. Ad esempio, il Thread.Start(Object) dispone di un singolo parametro che consente di fornire un valore al metodo eseguito dal thread all'avvio. Se si fornisce un Tuple<T1, T2, T3, T4, T5, T6, T7> dell'oggetto come argomento del metodo, è possibile fornire la routine di avvio del thread con sette elementi di dati.

Universal Windows Platform
Disponibile da 8
.NET Framework
Disponibile da 4.0
Libreria di classi portabile
Supportato in: piattaforme .NET portabili
Silverlight
Disponibile da 4.0
Windows Phone Silverlight
Disponibile da 8.0
Windows Phone
Disponibile da 8.1

I membri statici pubblici ( Condiviso in Visual Basic) di questo tipo è thread safe. Non tutti i membri di istanza sono garantiti come thread safe.

Torna all'inizio
Mostra: