문제
내가 작성한 정답
import java.util.*;
class Solution {
public String solution(String my_string) {
String answer1 = my_string.toLowerCase();
char[] answer2 = answer1.toCharArray();
Arrays.sort(answer2);
String answer = new String(answer2);
return answer;
}
}
Java에서는 문자 배열(char[])을 문자열(String)로 변환하는 것이 가능하다.
→ Java의 String 클래스는 문자 배열을 생성자에 인자로 받아 문자열을 생성할 수 있다.
다른 사람들의 정답
StreamAPI
import java.util.*;
import java.util.stream.Collectors;
class Solution {
public String solution(String myString) {
// Locale.ROOT
//: 문자열 처리에서 일관된 결과를 얻기 위해 사용, 로케일에 따른 차이를 피하기 위해 사용
return Arrays.stream(myString.toLowerCase(Locale.ROOT).split(""))
.sorted()
.collect(Collectors.joining());
}
}
- Locale.ROOT는 Java에서 로케일을 지정할 때 사용하는 상수이다. 로케일은 특정 언어 및 지역에 대한 정보를 포함하며, 주로 언어, 국가, 및 관련 규칙(예: 숫자 포맷, 날짜 포맷 등)을 나타낸다.
- Locale 클래스 Locale 클래스는 Java에서 로케일을 정의하고 사용하는 데 필요한 다양한 메서드와 상수를 제공한다. 일반적으로 로케일을 지정할 때는 언어 및 국가 코드를 조합하여 사용한다. - Locale.US : 미국 영어 - Locale.FRANCE: 프랑스어 - Locale.KOREA: 한국어
- Locale.ROOT Locale.ROOT는 특정한 언어나 국가에 의존하지 않는 기본 로케일을 나타낸다. 로케일의 규칙을 적용하지 않고, 일반적인 규칙으로 처리할 때 사용합니다. 주로 문자열 비교, 대소문자 변환, 정렬 등의 작업에서 예측 가능한 결과를 얻기 위해 사용한다.
Share article