어제 오늘 내일

[Java Character] toUpperCase(), toLowerCase() - 문자의 대소문자 변환하기 본문

IT/Java

[Java Character] toUpperCase(), toLowerCase() - 문자의 대소문자 변환하기

hi.anna 2025. 10. 1. 01:56

문자열을 다루다 보면 특정 문자를 대문자소문자로 변환해야 하는 경우가 많습니다. 예를 들어 사용자 입력을 대소문자 구분 없이 처리하거나, 데이터 정규화 과정에서 일관된 형식으로 맞출 때 자주 사용됩니다. Java에서는 Character 클래스의 toUpperCase()toLowerCase() 메소드를 통해 손쉽게 대소문자 변환을 할 수 있습니다.

 

1. toUpperCase() 메소드 개요

  • 메소드 시그니처
    public static char toUpperCase(char ch)
  • 전달된 문자를 대문자로 변환하여 반환합니다.
  • 이미 대문자거나 대문자로 변환할 수 없는 문자인 경우 원래 값 그대로 반환됩니다.

예제

public class CharacterToUpperCaseExample {
    public static void main(String[] args) {
        char c1 = 'a';
        char c2 = 'Z';
        char c3 = '한'; 

        System.out.println(Character.toUpperCase(c1)); // 'A'
        System.out.println(Character.toUpperCase(c2)); // 'Z'
        System.out.println(Character.toUpperCase(c3)); // '한'
    }
}

'a''A'로 변환되고, 'Z'는 이미 대문자이므로 그대로 반환됩니다. '한'은 대소문자 구분이 없는 문자라 변환되지 않습니다.

 

2. toLowerCase() 메소드 개요

  • 메소드 시그니처
    public static char toLowerCase(char ch)
  • 전달된 문자를 소문자로 변환하여 반환합니다.
  • 이미 소문자거나 변환할 수 없는 문자인 경우 원래 값 그대로 반환됩니다.

예제

public class CharacterToLowerCaseExample {
    public static void main(String[] args) {
        char c1 = 'G';
        char c2 = 'k';
        char c3 = '한';

        System.out.println(Character.toLowerCase(c1)); // 'g'
        System.out.println(Character.toLowerCase(c2)); // 'k'
        System.out.println(Character.toLowerCase(c3)); // '한'
    }
}

'G''g'로 변환되고, 'k'는 이미 소문자이므로 그대로 반환됩니다. '한'은 역시 변환되지 않습니다.

 

3. 문자열 내 대소문자 변환 활용

문자 단위뿐 아니라 문자열 전체를 순회하며 대소문자 변환을 적용할 수도 있습니다.

public class CharacterCaseExample {
    public static void main(String[] args) {
        String input = "Java Programming";
        StringBuilder upper = new StringBuilder();
        StringBuilder lower = new StringBuilder();

        for (int i = 0; i < input.length(); i++) {
            char ch = input.charAt(i);
            upper.append(Character.toUpperCase(ch));
            lower.append(Character.toLowerCase(ch));
        }

        System.out.println("원본: " + input);
        System.out.println("대문자 변환: " + upper);
        System.out.println("소문자 변환: " + lower);
    }
}

 

출력 결과:

원본: Java Programming
대문자 변환: JAVA PROGRAMMING
소문자 변환: java programming

이렇게 하면 문자열 전체의 대소문자를 쉽게 변환할 수 있습니다.

 

4. 활용 사례

  • 사용자 입력을 대소문자 구분 없이 비교할 때 (ID, 이메일)
  • 문자열을 정규화하여 일관된 데이터로 저장할 때
  • 검색 기능에서 대소문자 무시 비교를 구현할 때

 

정리

Character.toUpperCase()Character.toLowerCase() 메소드는 문자의 대소문자를 변환할 수 있는 간단하면서도 강력한 기능을 제공합니다. 문자열 전체 변환은 String 클래스의 toUpperCase(), toLowerCase() 메소드와 함께 활용하면 더 효율적입니다.

 

 

반응형
Comments