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 8 ou supérieur.

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

Type du sixième composant de du tuple.

T7

Type du septième composant de du tuple.

TRest

Les génériques 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 l’actuel 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. La 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 le 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 objet à 17 tuples qui contient les données de 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. L’objet à 17 tuples est créé en imbriquant 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 le 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 une liste 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 le 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 des 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ées à partir du Rest propriété. Dans l’exemple précédent, la 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 façons différentes :

  • Pour représenter un jeu unique 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 de l’enregistrement.

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

  • Pour retourner plusieurs valeurs à partir d’une méthode sans l’utilisation 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 en tant qu’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: