Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.IComparable.CompareTo(Object) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
현재 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 개체를 지정된 개체와 비교하고 현재 개체가 정렬 순서에서 지정된 개체와 이전, 이후 또는 같은 위치에 있는지 여부를 나타내는 정수를 반환합니다.
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
매개 변수
- obj
- Object
현재 인스턴스와 비교할 개체입니다.
반품
다음 표와 같이 이 인스턴스의 상대 위치와 obj 정렬 순서를 나타내는 부인 정수입니다.
| 값 | 설명 |
|---|---|
| 음수 정수 | 이 인스턴스는 앞에 섰습니다 obj.
|
| 0 | 이 인스턴스는 obj 정렬 순서에서 동일한 위치를 갖습니다.
|
| 양의 정수 | 이 인스턴스는 다음과 같습니다.obj
|
구현
예외
obj가 개체가 아닌 경우 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>
예제
다음 예제에서는 구성 요소가 소수 범위를 포함하는 정수인 8진수 배열을 만듭니다. 다음은 배열의 요소를 정렬되지 않은 순서로 표시하고 배열을 정렬한 다음 배열을 정렬된 순서로 표시하는 예제입니다. 출력은 배열이 튜플의 첫 번째 구성 요소별로 Item1정렬되었음을 보여줍니다. 이 예제에서는 메서드를 IComparable.CompareTo(Object) 직접 호출하지 않습니다. 이 메서드는 배열의 각 요소에 Sort(Array) 대한 메서드에 의해 암시적으로 호출됩니다.
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)
설명
이 멤버는 명시적 인터페이스 멤버 구현입니다. 인스턴스가 인터페이스로 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 캐스팅 IComparable 되는 경우에만 사용할 수 있습니다.
이 메서드는 클래스에 IComparable.CompareTo 대한 구현을 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest> 제공합니다. 메서드를 직접 호출할 수 있지만 컬렉션의 멤버 순서를 지정하기 위해 컬렉션 정렬 메서드(예: Array.Sort(Array)SortedList.Add및)의 기본 오버로드에서 가장 일반적으로 호출됩니다.
Caution
이 IComparable.CompareTo 메서드는 정렬 작업에 사용하기 위한 것입니다. 비교의 주요 목적이 두 개체가 같은지 여부를 확인하는 경우에는 사용하지 않아야 합니다. 두 개체가 같은지 여부를 확인하려면 메서드를 호출합니다 Tuple<T1,T2,T3,T4,T5,T6,T7,TRest>.Equals(Object) .
이 메서드는 기본 개체 비교자를 사용하여 각 구성 요소를 비교합니다.