Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java에서 특정 문자의 유니코드 범주를 찾는 방법


Character 클래스는 Object 클래스의 하위 클래스로, 기본 타입인 char 값을 하나의 객체로 감싸는 래퍼(wrapper) 클래스입니다. Character 타입의 객체는 char 타입의 단일 필드를 포함하고 있습니다.

특정 문자가 속한 유니코드 일반 범주(General Category)는 getType() 메서드를 사용하여 확인할 수 있습니다. 이 메서드는 Character 클래스의 정적(static) 메서드로, 매개변수로 전달된 문자 ch가 속한 유니코드 일반 범주를 나타내는 int 값을 반환합니다.

구문

public static int getType(char ch)

예제

public class CharacterTypeTest {
    public static void main(String args[]) {
        System.out.println("T의 유니코드 범주: " + Character.getType('T'));
        System.out.println("@의 유니코드 범주: " + Character.getType('@'));
        System.out.println(")의 유니코드 범주: " + Character.getType(')'));
        System.out.println("1의 유니코드 범주: " + Character.getType('1'));
        System.out.println("-의 유니코드 범주: " + Character.getType('-'));
        System.out.println("_의 유니코드 범주: " + Character.getType('_'));
        System.out.println("a의 유니코드 범주: " + Character.getType('a'));
    }
}

출력 결과

T의 유니코드 범주: 1
@의 유니코드 범주: 24
)의 유니코드 범주: 22
1의 유니코드 범주: 9
-의 유니코드 범주: 20
_의 유니코드 범주: 23
a의 유니코드 범주: 2

반환 값의 의미

getType() 메서드가 반환하는 정수 값은 각각 다음과 같은 유니코드 일반 범주를 나타냅니다.

  • 1 (UPPERCASE_LETTER) : 대문자 → 'T'
  • 2 (LOWERCASE_LETTER) : 소문자 → 'a'
  • 9 (DECIMAL_DIGIT_NUMBER) : 십진수 숫자 → '1'
  • 20 (DASH_PUNCTUATION) : 대시 문장부호 → '-'
  • 22 (END_PUNCTUATION) : 종결 문장부호 → ')'
  • 23 (CONNECTOR_PUNCTUATION) : 연결 문장부호 → '_'
  • 24 (OTHER_PUNCTUATION) : 기타 문장부호 → '@'

이처럼 getType() 메서드를 활용하면 특정 문자가 영문자, 숫자, 문장부호 중 어느 유형에 속하는지 프로그램 내에서 손쉽게 판별할 수 있습니다.