문자열 my_string
이 매개변수로 주어질 때, my_string
안에 있는 숫자만 골라 오름차순 정렬한 리스트를 return 하도록 solution 함수를 작성해보세요.
my_string
의 길이 ≤ 100my_string
에는 숫자가 한 개 이상 포함되어 있습니다.my_string
은 영어 소문자 또는 0부터 9까지의 숫자로 이루어져 있습니다.import java.util.*;
class Solution {
public int[] solution(String my_string) {
//문자열 중에 숫자만 뽑아오기
char[] str_arr=my_string.toCharArray();
String num="";
for(int i=0;i<str_arr.length;i++){
if(str_arr[i]>=48 && str_arr[i]<=57){
num+=str_arr[i]+"";
}
}
//숫자 오름차순 정렬하기
char[] num_arr=num.toCharArray();
int[] answer=new int[num_arr.length];
for(int i=0;i<num_arr.length;i++){
answer[i]=Integer.parseInt(String.valueOf(num_arr[i]));
}
Arrays.sort(answer);
return answer;
}
}
문자열을 배열로 만들고 숫자인 것만 뽑아온다.
뽑아온 숫자를 문자열 배열로 만들고
요소를 모두 정수형으로 변환한 후,
배열을 오름차순으로 정렬한다.
String.toCharArray()
문자열(String)을 쪼개서 문자(Char) 배열로 변환하는 메소드
.valueOf()
괄호 안의 객체를을 String으로 변환하는 메소드
괄호 안에는 boolean/double/float/int/long/String 등의 타입이 올 수 있음
import java.util 패키지의 Arrays
클래스 중 sort
메소드를 사용하면 배열을 쉽게 오름차순 정렬할 수 있다.
Arrays.sort(배열)