toUpperCase(소문자에서 대문자로 바꾸는 메소드)
갑자기...
java String의 toUpperCase()라는 메소드가 궁굼해졌다.
"abc"라는 문자열이라면 당연히 새로운 객체의 "ABC"를 반환하겠지만,
"ABC"에 대해서 toUpperCase()를 실행하면 같은 객체가 반환될까...
새로운 객체가 반환될까?
결과는...
동일한 객체를 반환한다.
String str0 = "abc";
String str1 = "ABC";
System.out.println(str0 == "abc"); //true
System.out.println(str1 == "ABC"); //true
System.out.println(str0.toUpperCase() == "abc"); //false
System.out.println(str1.toUpperCase() == "ABC"); //true
System.out.println(str0.toUpperCase() == "ABC"); //false
System.out.println(str0.toUpperCase() == str0); //false
System.out.println(str1.toUpperCase() == str1); //true
System.out.println(str0.toUpperCase() == str1); //false
toUpperCase()를 열어보니...
단순하게 생각했더니 하는 일이 많더군요.
우선 앞부분에서 upper case를 해야 하는 넘이 하나라도 있는지 검색하는 부분이 있더군요.
변경할 넘이 없으면 자기자신을 반환.
toUpperCase란 소문자->대문자로 변형시키는 일을 하는 메소드입니다.
단언컨데 과제를 위해 가장 완벽한 메소드ㅋㅋㅋ