https://school.programmers.co.kr/learn/courses/30/lessons/181866
문제
문자열 myString이 주어집니다. "x"를 기준으로 해당 문자열을 잘라내 배열을 만든 후 사전순으로 정렬한 배열을 return 하는 solution 함수를 완성해 주세요.
단, 빈 문자열은 반환할 배열에 넣지 않습니다.
소스코드
import java.util.Arrays;
class Solution {
public String[] solution(String myString) {
String[] removedX = myString.split("x");
String[] answer = Arrays.stream(removedX)
.filter(str -> !str.isEmpty())
.sorted()
.toArray(String[]::new);
return answer;
}
}
소스코드 설명
1. split사용해서 x분리
2. stream으로 변경
3. filter()로 빈 문자열 삭제
4. sorted()로 정렬
import java.util.*;
class Solution {
public String[] solution(String myString) {
return Arrays.stream(myString.split("x")).filter(s -> !s.isEmpty()).sorted().toArray(String[]::new);
}
}
다른 사람들의 풀이는 위와 같다.
변수 선언 없이 리턴에 주는 방법도 좋은 것 같다.
'알고리즘' 카테고리의 다른 글
[프로그래머스] 코딩테스트 연습 - 옷가게 할인 받기(JAVA) (0) | 2023.08.02 |
---|---|
[프로그래머스] 코딩테스트 입문 - 피자 나눠 먹기 (1)(JAVA) (0) | 2023.08.01 |
[프로그래머스] 코딩테스트 연습 - 특정 문자열로 끝나는 가장 긴 부분 문자열 찾기(JAVA) (0) | 2023.07.30 |
[프로그래머스] 코딩테스트 연습 - 공백으로 구분하기 1(JAVA) (0) | 2023.07.27 |
[프로그래머스] 코딩테스트 연습 - 조건에 맞게 수열 변환하기 3(JAVA) (0) | 2023.07.26 |