Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> classe

 

Date de publication : novembre 2016

Représente un n- tuple, où n est supérieur ou égal à 8.

Espace de noms:   System
Assembly:  mscorlib (dans mscorlib.dll)

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

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

Paramètres de type

T1

Le type de composant du tuple premier.

T2

Le type du composant du tuple.

T3

Le type de composant du tuple tiers.

T4

Le type de composant du tuple quatrième.

T5

Le type de composant du tuple cinquième.

T6

Le type de composant du tuple sixième.

T7

Le type de composant du tuple septième.

TRest

N’importe quel générique Tuple composants restants de l’objet qui définit les types du tuple.

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

Initialise une nouvelle instance de la classe Tuple<T1, T2, T3, T4, T5, T6, T7, TRest>.

NomDescription
System_CAPS_pubpropertyItem1

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> premier composant de l’objet.

System_CAPS_pubpropertyItem2

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> deuxième composant de l’objet.

System_CAPS_pubpropertyItem3

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> troisième composant de l’objet.

System_CAPS_pubpropertyItem4

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> quatrième composant de l’objet.

System_CAPS_pubpropertyItem5

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> cinquième composant de l’objet.

System_CAPS_pubpropertyItem6

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> sixième composant de l’objet.

System_CAPS_pubpropertyItem7

Obtient la valeur de la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> septième composant de l’objet.

System_CAPS_pubpropertyRest

Obtient les valeurs combinées Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> composants restants de l’objet.

NomDescription
System_CAPS_pubmethodEquals(Object)

Retourne une valeur qui indique si l’actuel Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet est égal à un objet spécifié.(Remplace Object.Equals(Object).)

System_CAPS_protmethodFinalize()

Autorise un objet à tenter de libérer des ressources et d'exécuter d'autres opérations de nettoyage avant qu'il ne soit récupéré par l'opération garbage collection. (Hérité de Object.)

System_CAPS_pubmethodGetHashCode()

Calcule le code de hachage pour l’actuel Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet.(Remplace Object.GetHashCode().)

System_CAPS_pubmethodGetType()

Obtient le Type de l'instance actuelle.(Hérité de Object.)

System_CAPS_protmethodMemberwiseClone()

Crée une copie superficielle du Object actuel.(Hérité de Object.)

System_CAPS_pubmethodToString()

Retourne une chaîne qui représente la valeur de cette Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> instance.(Remplace Object.ToString().)

NomDescription
System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralComparable.CompareTo(Object, IComparer)

Compare l’actuel Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet à un objet spécifié à l’aide d’un comparateur spécifié et retourne un entier qui indique si l’objet actuel est avant, après ou à la même position que l’objet spécifié dans l’ordre de tri.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralEquatable.Equals(Object, IEqualityComparer)

Retourne une valeur qui indique si l’actuel Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet est égal à un objet spécifié selon une méthode de comparaison spécifiée.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIStructuralEquatable.GetHashCode(IEqualityComparer)

Calcule le code de hachage pour l’actuel Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> à l’aide d’une méthode de calcul spécifiée.

System_CAPS_pubinterfaceSystem_CAPS_privmethodIComparable.CompareTo(Object)

Compare l’objet Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> actuel à un objet spécifié et renvoie un entier qui indique si l’objet actuel est avant, après ou à la même position que l’objet spécifié dans l’ordre de tri.

Un tuple est une structure de données qui a un nombre spécifique et une séquence de valeurs. Le Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> classe représente un n- tuple qui a huit composants ou plus.

Vous pouvez instancier un Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet avec exactement huit composants en appelant la méthode statique Tuple.Create<T1, T2, T3, T4, T5, T6, T7, T8> (méthode). L’exemple suivant crée un 8-tuple (octuple) qui contient les nombres premiers inférieurs à 20. Notez qu’il utilise l’inférence de type pour déterminer le type de chaque composant.

var primes = Tuple.Create(2, 3, 5, 7, 11, 13, 17, 19);
Console.WriteLine("Prime numbers less than 20: " + 
                  "{0}, {1}, {2}, {3}, {4}, {5}, {6}, and {7}",
                  primes.Item1, primes.Item2, primes.Item3, 
                  primes.Item4, primes.Item5, primes.Item6,
                  primes.Item7, primes.Rest.Item1);
// The example displays the following output:
//    Prime numbers less than 20: 2, 3, 5, 7, 11, 13, 17, and 19

Vous pouvez également instancier un objet n-tuple avec huit ou plus de composants en appelant le Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> constructeur. L’exemple suivant utilise le Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> constructeur pour créer un objet de 8 tuples qui est équivalent au tuple créés dans l’exemple précédent.

var primes = new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32,  
             Tuple<Int32>> (2, 3, 5, 7, 11, 13, 17, new Tuple<Int32>(19));
System_CAPS_noteRemarque

Pour créer un tuple de n avec neuf composants ou plus, vous devez appeler la Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> constructeur. Les méthodes de fabrique statiques de la Tuple classe ne prennent pas en charge la création de Tuple objets avec plus de huit composants.

Pour instancier un tuple de n qui a huit composants ou plus avec le Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> constructeur, vous fournissez un type générique Tuple de l’objet en tant que le rest paramètre pour définir le huitième via ncomposants du tuple. En imbriquant générique Tuple objets de cette manière, vous pouvez créer un tuple qui n’a aucune limitation pratique sur le nombre de ses composants.

L’exemple suivant crée un tuple 17 qui contient les données de la population pour la ville de Détroit, Michigan, pour chaque recensement national de 1860 à 2000. Le premier composant du tuple est le nom de ville. Le deuxième composant est la date de début de la série de données, et le troisième composant est la population à la date de début. Chaque composant suivant fournit le remplissage à intervalles de dix ans. 17-tuple est créé par l’imbrication un Tuple<T1, T2, T3> de l’objet à l’intérieur d’un Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet. (Qui est, le Tuple<T1, T2, T3> objet est fourni en tant que la valeur de la rest paramètre dans le Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> constructeur de classe.) Cela Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet, à son tour, est imbriqué dans externe Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet. (Qui est, le Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> objet est fourni en tant que la valeur de la rest paramètre externe Tuple<T1, T2, T3, T4, T5, T6, T7, TRest> constructeur de classe de l’objet.)

var from1980 = Tuple.Create(1203339, 1027974, 951270);
var from1910 = new Tuple<int, int, int, int, int, int, int, Tuple<int, int, int>> 
    (465766, 993078, 1568622, 1623452, 1849568, 1670144, 1511462, from1980);
var population = new Tuple<string, int, int, int, int, int, int,
    Tuple<int, int, int, int, int, int, int, Tuple<int, int, int>>> 
    ("Detroit", 1860, 45619, 79577, 116340, 205876, 285704, from1910);

Vous pouvez récupérer la valeur de sept premières composants du tuple à l’aide de la lecture seule Item1, Item2, Item3, Item4, Item5, Item6, et Item7 propriétés d’une instance. Les composants additionnels sont imbriqués et peuvent être récupérés à partir de la Rest propriété. Dans l’exemple précédent, le Item1 via Item7 propriétés extraient les composants 1 à 7 du tuple. Le composants 8 à 14 sont contenus dans le tuple imbriqué au deuxième niveau et sont représentés par le Rest.Item1 via Rest.Item7 propriétés. Les composants 15 à 17 sont contenus dans le tuple imbriqué au troisième niveau et sont représentés par le Rest.Rest.Item1 si Rest.Rest.Item3 propriétés.

Tuples sont utilisés communément de quatre manières différentes :

  • Pour représenter un seul jeu de données. Par exemple, un tuple peut représenter un enregistrement de base de données et ses composants peuvent représenter des champs individuels de l’enregistrement.

  • Pour fournir un accès facile aux et la manipulation d’un jeu de données.

  • Pour retourner plusieurs valeurs à partir d’une méthode sans utiliser de out (en c#) ou ByRef paramètres (Visual Basic). Par exemple, l’exemple précédent retourne ses statistiques calculées, avec le nom de ville, dans un Tuple<T1, T2, T3, T4, T5, T6, T7> objet.

  • Pour passer plusieurs valeurs à une méthode via un paramètre unique. Par exemple, le Thread.Start(Object) méthode possède un paramètre unique qui vous permet de fournir une valeur à la méthode que le thread exécute au démarrage. Si vous fournissez un Tuple<T1, T2, T3, T4, T5, T6, T7> de l’objet comme argument de méthode, vous pouvez fournir la routine de démarrage du thread avec sept éléments de données.

Plateforme Windows universelle
Disponible depuis 8
.NET Framework
Disponible depuis 4.0
Bibliothèque de classes portable
Pris en charge dans : plateformes .NET portables
Silverlight
Disponible depuis 4.0
Silverlight pour Windows Phone
Disponible depuis 8.0
Windows Phone
Disponible depuis 8.1

Tous les membres statiques publics ( Shared en Visual Basic) de ce type sont thread-safe. Les membres d’instance n’ont pas la garantie d’être thread-safe.

Retour au début
Afficher: