Int32.CompareTo 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
이 인스턴스를 지정된 32비트 부호 있는 정수와 비교하여 상대 값의 표시를 반환합니다.
오버로드
CompareTo(Int32) |
이 인스턴스를 지정된 32비트 부호 있는 정수와 비교하여 상대 값의 표시를 반환합니다. |
CompareTo(Object) |
이 인스턴스를 지정된 개체와 비교하여 상대 값의 표시를 반환합니다. |
CompareTo(Int32)
이 인스턴스를 지정된 32비트 부호 있는 정수와 비교하여 상대 값의 표시를 반환합니다.
public:
virtual int CompareTo(int value);
public int CompareTo (int value);
abstract member CompareTo : int -> int
override this.CompareTo : int -> int
Public Function CompareTo (value As Integer) As Integer
매개 변수
- value
- Int32
비교할 정수입니다.
반환
이 인스턴스와 value
의 상대 값을 나타내는 부호 있는 숫자입니다.
반환 값 | 설명 |
---|---|
0보다 작음 | 이 인스턴스는 value 보다 작습니다.
|
0 | 이 인스턴스가 value 과 같은 경우
|
0보다 큼 | 이 인스턴스는 value 보다 큽니다.
|
구현
예제
다음 예제는 Int32.CompareTo(Int32) 메서드. 네 가지 비교를 위해 메서드에서 반환하는 값을 표시하는 것 외에도 반환 값을 사용자 지정 Comparison
열거형의 멤버로 변환합니다. 이 값도 표시됩니다.
using System;
enum Comparison {
LessThan=-1, Equal=0, GreaterThan=1};
public class ValueComparison
{
public static void Main()
{
int mainValue = 16325;
int zeroValue = 0;
int negativeValue = -1934;
int positiveValue = 903624;
int sameValue = 16325;
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).",
mainValue, zeroValue,
mainValue.CompareTo(zeroValue),
(Comparison) mainValue.CompareTo(zeroValue));
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).",
mainValue, sameValue,
mainValue.CompareTo(sameValue),
(Comparison) mainValue.CompareTo(sameValue));
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).",
mainValue, negativeValue,
mainValue.CompareTo(negativeValue),
(Comparison) mainValue.CompareTo(negativeValue));
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).",
mainValue, positiveValue,
mainValue.CompareTo(positiveValue),
(Comparison) mainValue.CompareTo(positiveValue));
}
}
// The example displays the following output:
// Comparing 16325 and 0: 1 (GreaterThan).
// Comparing 16325 and 16325: 0 (Equal).
// Comparing 16325 and -1934: 1 (GreaterThan).
// Comparing 16325 and 903624: -1 (LessThan).
open System
type Comparison =
| LessThan = -1
| Equal = 0
| GreaterThan = 1
let mainValue = 16325
let zeroValue = 0
let negativeValue = -1934
let positiveValue = 903624
let sameValue = 16325
printfn $"Comparing {mainValue} and {zeroValue}: {mainValue.CompareTo zeroValue} ({enum<Comparison>(mainValue.CompareTo zeroValue)})."
printfn $"Comparing {mainValue} and {sameValue}: {mainValue.CompareTo sameValue} ({enum<Comparison>(mainValue.CompareTo sameValue)})."
printfn $"Comparing {mainValue} and {negativeValue}: {mainValue.CompareTo negativeValue} ({enum<Comparison>(mainValue.CompareTo negativeValue)})."
printfn $"Comparing {mainValue} and {positiveValue}: {mainValue.CompareTo positiveValue} ({enum<Comparison>(mainValue.CompareTo positiveValue)})."
// The example displays the following output:
// Comparing 16325 and 0: 1 (GreaterThan).
// Comparing 16325 and 16325: 0 (Equal).
// Comparing 16325 and -1934: 1 (GreaterThan).
// Comparing 16325 and 903624: -1 (LessThan).
Public Enum Comparison As Integer
LessThan = -1
Equal = 0
GreaterThan = 1
End Enum
Module ValueComparison
Public Sub Main()
Dim mainValue As Integer = 16325
Dim zeroValue As Integer = 0
Dim negativeValue As Integer = -1934
Dim positiveValue As Integer = 903624
Dim sameValue As Integer = 16325
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).", _
mainValue, zeroValue, _
mainValue.CompareTo(zeroValue), _
CType(mainValue.CompareTo(zeroValue), Comparison))
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).", _
mainValue, sameValue, _
mainValue.CompareTo(sameValue), _
CType(mainValue.CompareTo(sameValue), Comparison))
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).", _
mainValue, negativeValue, _
mainValue.CompareTo(negativeValue), _
CType(mainValue.CompareTo(negativeValue), Comparison))
Console.WriteLine("Comparing {0} and {1}: {2} ({3}).", _
mainValue, positiveValue, _
mainValue.CompareTo(positiveValue), _
CType(mainValue.CompareTo(positiveValue), Comparison))
End Sub
End Module
' The example displays the following output:
' Comparing 16325 and 0: 1 (GreaterThan).
' Comparing 16325 and 16325: 0 (Equal).
' Comparing 16325 and -1934: 1 (GreaterThan).
' Comparing 16325 and 903624: -1 (LessThan).
설명
이 메서드는 인터페이스를 System.IComparable<T> 구현하고 매개 변수를 개체로 변환 value
할 필요가 없으므로 메서드보다 Int32.CompareTo 약간 더 잘 수행됩니다.
프로그래밍 언어에 따라 매개 변수 형식에 인스턴스 형식보다 적은 비트(좁은 비트)가 있는 메서드를 코딩 CompareTo 할 수 있습니다. 일부 프로그래밍 언어는 인스턴스만큼 비트가 많은 형식으로 매개 변수를 나타내는 암시적 확대 변환을 수행하기 때문에 가능합니다.
예를 들어 인스턴스 형식이 Int32 고 매개 변수 형식이 .입니다 Byte. Microsoft C# 컴파일러는 매개 변수 Int32값을 나타내는 지침을 생성한 다음 인스턴스의 Int32 값과 매개 변수 표현을 비교하는 메서드를 Int32 생성 Int32.CompareTo 합니다.
프로그래밍 언어의 설명서를 참조하여 컴파일러가 숫자 형식에서 암시적 확대 변환을 수행하는지 여부를 확인합니다.
추가 정보
적용 대상
CompareTo(Object)
이 인스턴스를 지정된 개체와 비교하여 상대 값의 표시를 반환합니다.
public:
virtual int CompareTo(System::Object ^ value);
public int CompareTo (object? value);
public int CompareTo (object value);
abstract member CompareTo : obj -> int
override this.CompareTo : obj -> int
Public Function CompareTo (value As Object) As Integer
매개 변수
- value
- Object
비교할 개체 또는 null
입니다.
반환
이 인스턴스와 value
의 상대 값을 나타내는 부호 있는 숫자입니다.
반환 값 | 설명 |
---|---|
0보다 작음 | 이 인스턴스는 value 보다 작습니다.
|
0 | 이 인스턴스가 value 과 같은 경우
|
0보다 큼 | 이 인스턴스는 value 보다 크거나 value 가 null 입니다.
|
구현
예외
value
이 Int32이 아닌 경우
설명
값에 Int32관계없이 모든 인스턴스는 보다 null
큰 것으로 간주됩니다.
value
이거나 인스턴스Int32여야 null
합니다. 그렇지 않으면 예외가 throw됩니다.