Computer >> 컴퓨터 >  >> 프로그래밍 >> C#

C# Char.CompareTo() 메서드 – 구문, 반환 값, 예제로 배우는 문자 비교

C#의 Char.CompareTo() 메서드는 현재 문자(char) 인스턴스를 지정된 개체 또는 값 형식과 비교하여, 정렬 순서에서 이 인스턴스가 앞에 오는지, 뒤에 오는지, 아니면 동일한 위치에 있는지를 나타내는 정수 값을 반환합니다.

구문

Char.CompareTo() 메서드의 기본 구문은 다음과 같습니다.

public int CompareTo (char val);
public int CompareTo (object val);

첫 번째 구문에서 val은 비교 대상이 되는 char 개체이며, 두 번째 구문에서는 이 인스턴스와 비교할 개체 또는 null을 의미합니다.

반환 값

CompareTo() 메서드의 반환 값은 비교 결과에 따라 다음과 같이 결정됩니다.

  • 0 : 현재 인스턴스가 정렬 순서에서 val과 같은 위치에 있는 경우
  • 0보다 작은 값 : 현재 인스턴스가 val보다 앞에 오는 경우
  • 0보다 큰 값 : 현재 인스턴스가 val보다 뒤에 오는 경우

예제 1

다음은 Char.CompareTo() 메서드를 구현하는 첫 번째 예제입니다.

using System;
public class Demo {
   public static void Main(){
      char val = 'A';
      Console.WriteLine("Return Value = "+'A'.CompareTo(val));
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Return Value = 0

'A'와 'A'는 동일한 문자이므로 정렬 순서상 위치가 같아 0이 반환됩니다.

예제 2

이번에는 서로 다른 문자를 비교하는 예제를 살펴보겠습니다.

using System;
public class Demo {
   public static void Main(){
      char val = 'B';
      Console.WriteLine("Return Value = "+'D'.CompareTo(val));
   }
}

출력 결과

위 코드를 실행하면 다음과 같은 결과가 출력됩니다.

Return Value = 2

'D'(유니코드 68)가 'B'(유니코드 66)보다 뒤에 위치하므로 두 문자의 유니코드 값 차이인 2가 반환됩니다. 이처럼 CompareTo() 메서드는 단순히 대소 관계만 알려주는 것이 아니라, 두 문자 간의 정렬 순서 차이를 수치로 확인할 수 있어 유용합니다.