Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.IComparable.CompareTo(Object) Méthode

Définition

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.

int IComparable.CompareTo (object obj);

Paramètres

obj
Object

Objet à comparer à l'instance actuelle.

Retours

Entier signé qui indique la position relative de cette instance et de obj dans l’ordre de tri, comme indiqué dans le tableau suivant.

Valeur Description
Entier négatif Cette instance précède obj.
Zéro Cette instance et obj ont la même position dans l'ordre de tri.
Entier positif Cette instance suit obj.

Implémente

Exceptions

Exemples

L’exemple suivant crée un tableau d’octuples dont les composants sont des entiers qui contiennent une plage de nombres premiers. L’exemple montre comment afficher les éléments du tableau dans un ordre non trié, trier le tableau, puis afficher le tableau dans l’ordre trié. La sortie indique que le tableau a été trié par Item1, ou le premier composant du tuple. Notez que l’exemple n’appelle pas directement la IComparable.CompareTo(Object) méthode. Cette méthode est appelée implicitement par la Sort(Array) méthode pour chaque élément du tableau.

using System;

public class Example
{
   public static void Main()
   {
      // Create array of 8-tuple objects containing prime numbers.
      Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, Tuple<Int32>>[] primes = 
                     { new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>>(2, 3, 5, 7, 11, 13, 17, new Tuple<Int32>(19)),
                       new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>>(23, 29, 31, 37, 41, 43, 47, new Tuple<Int32>(55)), 
                       new Tuple<Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple<Int32>>(3, 2, 5, 7, 11, 13, 17, new Tuple<Int32>(19)) };
      // Display 8-tuples in unsorted order.
      foreach (var prime in primes)
         Console.WriteLine(prime.ToString());
      Console.WriteLine();
      
      // Sort the array and display its 8-tuples.
      Array.Sort(primes);
      foreach (var prime in primes)
         Console.WriteLine(prime.ToString());
   }
}
// The example displays the following output:
//       (2, 3, 5, 7, 11, 13, 17, 19)
//       (23, 29, 31, 37, 41, 43, 47, 55)
//       (3, 2, 5, 7, 11, 13, 17, 19)
//       
//       (2, 3, 5, 7, 11, 13, 17, 19)
//       (3, 2, 5, 7, 11, 13, 17, 19)
//       (23, 29, 31, 37, 41, 43, 47, 55)

Remarques

Ce membre est une implémentation d'un membre d'interface explicite. Il peut uniquement être utilisé lorsque l'instance de Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> est castée en interface IComparable.

Cette méthode fournit l’implémentation IComparable.CompareTo de la Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> classe . Bien que la méthode puisse être appelée directement, elle est généralement appelée par les surcharges par défaut des méthodes de tri de collection, telles que Array.Sort(Array) et SortedList.Add, pour classer les membres d’une collection.

Attention

La IComparable.CompareTo méthode est destinée à être utilisée dans les opérations de tri. Il ne doit pas être utilisé lorsque l’objectif principal d’une comparaison est de déterminer si deux objets sont égaux. Pour déterminer si deux objets sont égaux, appelez la Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Equals(Object) méthode .

Cette méthode utilise le comparateur d’objets par défaut pour comparer chaque composant.

S’applique à

Produit Versions
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0