궁금증 연구소

안녕하세요. 궁금증연구소 입니다.

오늘 포스팅 주제는 "[Java] Locale.Root 사용하는 이유" 입니다.

 

lcale.root

프로그래머스에서 다른사람의 코드를 보다보니 Locale.ROOT 라는 것을 toLowerCase()의 매개변수로 넣어 놓았습니다. 이게 뭐지.. 하고 찾아보았습니다.

 

자바 공식문서(toLowerCase())

우선 자바 공식문서에 보면 toLowerCase() 의 매개변수에 디폴트 값은

Locale.getDefault() 라는 함수의 리턴값으로 되어 있는것을 볼수 있습니다.

 

이 메소드는 Locale에 민감한 함수인데, 예를 들어 터키 언어의 경우는 "Title"이라는 글씨가 "t\u013tle"로 변경되지만, 라틴언어에서는 "\u0131"로 변경된다고 합니다. 즉, 어떤 언어냐에 따라 변경되는 값이 다르다 보니, 이런 설정을 두게 된것 같습니다.

 

결론적으로 locale에 insensive 한 결과를 보고싶으면 Locale.ROOT 값을 넣어주는 것을 추천 하네요.

 

 

GTP 설명

 

 

 
반응형

공유하기

facebook twitter kakaoTalk kakaostory naver band
loading