Study/java

[Java] String - toLowerCase(), toUpperCase() : 대소문자 바꾸기

 

자바 String의 toLowerCase와 toUpperCase는 각각 대문자는 소문자로, 소문자는 대문자로 변환해주는 메소드입니다. 

해당 메소드는 파라미터 없이 사용하거나 Locale을 함께 넣어 사용할 수 있습니다.

 

문자열을 대소문자로 변환해주는 toLowerCase(), toUpperCase() 메소드와 

Character 클래스에서 대소문자를 변환해주는 Character.toLowerCase, Character.toUpperCase 메소드,

그리고 대소문자 여부를 판단해주는 isLowerCase(), isUpperCase() 메소드에 대해 설명드리겠습니다.

 

toLowerCase(), toUpperCase()

사용 방법은 다음과 같습니다.

String s = "ABC";
System.out.println("ABC toLowerCase : " + s.toLowerCase());

s = "abc";
System.out.println("abc toUpperCase : " + s.toUpperCase());

String s2 = "III";
Locale tr = new Locale("tr", "TR");
System.out.println("III toLowerCase(Turkish) : " + s2.toLowerCase(tr));
System.out.println("III toLowerCase : " + s2.toLowerCase());

toLowerCase, toUpperCase 결과
toLowerCase, toUpperCase 결과

toLowerCase() 메소드는 문자열을 모두 소문자로 변환하고, toUpperCase()는 모두 대문자로 변환합니다.

 

Locale을 변수로 넣으면 Locale을 기준으로 하여 대소문자 변환 작업을 수행합니다.

세번째 예시에서는 Turkish Locale을 넣어서 대문자 I를 Turkish의 소문자인 ı(점없는 소문자 i)로 변환하였습니다.

 

공식문서상 Locale의 예시에는 Turkish만 나와있습니다.

한국어 쌍자음 같은 것도 변환가능한지 시도해보긴 했는데 변환되지는 않았습니다.

 

 

 

 

Character.toLowerCase(), toUpperCase()

String클래스의 toLower/UpperCase는 문자열 전체를 변환한다면

이 메소드는 파라미터로 주어진 문자만 변환하는 메소드입니다.

 

Character클래스에 static메소드 중에 대소문자 변환 메소드가 존재합니다.

System.out.println(Character.toLowerCase('A')); //'a'
System.out.println(Character.toUpperCase('s'));	//'S'

위와 같이 사용하며, 문자 하나를 변환할때 유용하게 사용할수 있습니다.

 

Character.isLowerCase(), isUpperCase()

isLowerCase()와 isUpperCase() 메소드는 주어진 문자가 대문자인지 소문자인지 구분해주는 메소드입니다.

System.out.println("Character.isLowerCase('a') = " + Character.isLowerCase('a')); // true
System.out.println("Character.isLowerCase('A') = " + Character.isLowerCase('A')); // false

System.out.println("Character.isUpperCase('B') = " + Character.isUpperCase('B')); // true
System.out.println("Character.isUpperCase('b') = " + Character.isUpperCase('b')); // false

 

isLowerCase 메소드는 주어진 문자가 소문자면 true, 아니면 false를 반환합니다.

그 반대인 toUppwerCase 메소드는 주어진 문자가 대문자면 true, 아니면 false를 반환합니다.