https://school.programmers.co.kr/learn/courses/30/lessons/120850
문자열 my_string이 매개변수로 주어질 때, my_string 안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요.
Arrays.stream()
: 문자열 배열을 스트림으로 변환한다.String.matches()
: 특정 패턴의 문자열을 포함하는지 확인할 수 있다.mapToInt(Integer::parseInt)
: 문자열을 정수로 변환하고, 이를 IntStream으로 매핑sorted()
: 오름차순 정렬한다.toArray()
: 배열로 변환한다.import java.util.*;
class Solution {
public int[] solution(String my_string) {
ArrayList<Integer> list = new ArrayList<>();
String str = my_string.replaceAll("[a-z]","");
for(char c : str.toCharArray()) {
list.add(Character.getNumericValue(c));
}
list.sort(Comparator.naturalOrder());
int[] answer = new int[list.size()];
for(int i = 0; i < answer.length; i++) answer[i] = list.get(i);
return answer;
}
}
import java.util.*;
class Solution {
public int[] solution(String my_string) {
String[] str = my_string.split("");
int[] answer = Arrays.stream(str)
.filter(s -> s.matches("[0-9]"))
.mapToInt(Integer::parseInt)
.sorted()
.toArray();
return answer;
}
}