Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.IComparable.CompareTo(Object) Yöntem

Tanım

Geçerli Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> nesneyi belirtilen bir nesneyle karşılaştırır ve geçerli nesnenin sıralama düzeninde belirtilen nesneden önce mi, sonra mı yoksa belirtilen nesneyle aynı konumda mı olduğunu belirten bir tamsayı döndürür.

 virtual int System.IComparable.CompareTo(System::Object ^ obj) = IComparable::CompareTo;
int IComparable.CompareTo (object obj);
abstract member System.IComparable.CompareTo : obj -> int
override this.System.IComparable.CompareTo : obj -> int
Function CompareTo (obj As Object) As Integer Implements IComparable.CompareTo

Parametreler

obj
Object

Geçerli örnek ile karşılaştırılacak nesne.

Döndürülenler

Int32

Aşağıdaki tabloda gösterildiği gibi, bu örneğin göreli konumunu ve obj sıralama düzeninde gösteren işaretli bir tamsayı.

Değer Açıklama
Negatif bir tamsayı Bu örnek öncesindedir obj.
Sıfır Bu örnek ve obj sıralama düzeninde aynı konuma sahiptir.
Pozitif bir tamsayı Bu örnek aşağıdaki gibidir obj.

Uygulamalar

Özel durumlar

Örnekler

Aşağıdaki örnek, bileşenleri bir asal sayı aralığı içeren tamsayılar olan bir sekizli dizisi oluşturur. Örnek, dizi öğelerini sıralanmamış düzende görüntüler, diziyi sıralar ve ardından diziyi sıralı düzende görüntüler. Çıkış, dizinin öğesine veya tanımlama grubundaki ilk bileşene göre Item1sıralandığını gösterir. Örneğin yöntemini doğrudan çağırmadığını IComparable.CompareTo(Object) unutmayın. Bu yöntem, dizideki Sort(Array) her öğe için yöntemi tarafından örtük olarak çağrılır.

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)
open System

// Create array of 8-tuple objects containing prime numbers.
let 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.
for prime in primes do
    printfn $"{prime}"
printfn ""

// Sort the array and display its 8-tuples.
Array.Sort primes
for prime in primes do
    printfn $"{prime}"
// 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)
Module Example
   Public Sub Main()
      ' Create array of 8-tuple objects containing prime numbers.
      Dim primes() = { New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (2, 3, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19)),
                       New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (23, 29, 31, 37, 41, 43, 47, 
                           New Tuple(Of Int32)(55)), 
                       New Tuple(Of Int32, Int32, Int32, Int32, Int32, Int32, Int32, 
                           Tuple(Of Int32)) (3, 2, 5, 7, 11, 13, 17, 
                           New Tuple(Of Int32)(19)) }
      ' Display 8-tuples in unsorted order.
      For Each prime In primes
         Console.WriteLine(prime.ToString())
      Next
      Console.WriteLine()
      
      ' Sort the array and display its 8-tuples.
      Array.Sort(primes)
      For Each prime In primes
         Console.WriteLine(prime.ToString())
      Next
   End Sub
End Module
' 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)

Açıklamalar

Bu üye, açık bir arabirim üyesi uygulamasıdır. Yalnızca örnek bir IComparable arabirime Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> yayınlandığında kullanılabilir.

Bu yöntem sınıfı için Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> uygulamayı sağlarIComparable.CompareTo. yöntemi doğrudan çağrılabilse de, bir koleksiyonun üyelerini sıralamak için en yaygın olarak ve SortedList.Addgibi Array.Sort(Array) koleksiyon sıralama yöntemlerinin varsayılan aşırı yüklemeleri tarafından çağrılır.

Dikkat

IComparable.CompareTo yöntemi, sıralama işlemlerinde kullanılmak üzere tasarlanmıştır. Karşılaştırmanın asıl amacı iki nesnenin eşit olup olmadığını belirlemek olduğunda kullanılmamalıdır. İki nesnenin eşit olup olmadığını belirlemek için yöntemini çağırın Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Equals(Object) .

Bu yöntem, her bileşeni karşılaştırmak için varsayılan nesne karşılaştırıcısını kullanır.

Şunlara uygulanır