[프로그래머스]문자열 정렬하기 (2)
세균 증식
문제 설명
영어 대소문자로 이루어진 문자열 my_string이 매개변수로 주어질 때, my_string을 모두 소문자로 바꾸고 알파벳 순서대로 정렬한 문자열을 return 하도록 solution 함수를 완성해보세요.
제한사항
- 0 < my_string 길이 < 100
입출력 예
my_string | result |
---|---|
“Bcad” | “abcd” |
“heLLo” | “ehllo” |
“Python” | “hnopty” |
입출력 예 설명
입출력 예 #1
- “Bcad”를 모두 소문자로 바꾸면 “bcad”이고 이를 알파벳 순으로 정렬하면 “abcd”입니다.
입출력 예 #2
- “heLLo”를 모두 소문자로 바꾸면 “hello”이고 이를 알파벳 순으로 정렬하면 “ehllo”입니다.
입출력 예 #3
- “Python”를 모두 소문자로 바꾸면 “python”이고 이를 알파벳 순으로 정렬하면 “hnopty”입니다.
나의 풀이 코드
import java.util.*;
class Solution {
public String solution(String my_string) {
String answer = "";
String str = my_string.toLowerCase();
char[] charArr = str.toCharArray();
Arrays.sort(charArr);
answer = new String(charArr);
return answer;
}
}
소문자로 바꾸고 문자형 배열로 변환 후 정렬하고 다시 스트링으로 변환했다.
배운점
import java.util.*;
import java.util.stream.Collectors;
class Solution {
public String solution(String myString) {
return Arrays
.stream(myString.toLowerCase(Locale.ROOT).split(""))
.sorted()
.collect(Collectors.joining());
}
}
다른사람이 스트림으로 푼 코드이다.
myString.toLowerCase(Locale.ROOT)으로 소문자로 변환,
스플릿하여 문자형 배열로 변환,
정렬후,
collect(Collectors.joining())으로 다시 문자열로 변환하다.
Leave a comment