코딩테스트

[프로그래머스 / lv 0] 문자열 정렬하기(1) (JAVA)

lyndaa 2023. 4. 5. 18:23

문제


풀이 방법

  • 문자열 중에 숫자만 List에 추가한다.
  • List를 오름차순으로 정렬 후 List 크기의 배열을 만들어 이동시킨다.

코드

import java.util.*;
class Solution {
    public int[] solution(String my_string) {
         List<Integer> list = new ArrayList<>();
        for(int i=0; i<my_string.length(); i++){
            if(my_string.charAt(i)>='0'&&my_string.charAt(i)<='9'){
                list.add(Integer.valueOf(my_string.charAt(i))-'0');
            }
        }
        Collections.sort(list);
        int[] answer = new int[list.size()];
        int i=0;
        for(int a:list){
            answer[i]=a;
            i++;
        }
        return answer;
    }
}

👇🏻 스트림 활용

class Solution {
    public int[] solution(String myString) {
        return Arrays.stream(myString.replaceAll("[A-Z|a-z]", "").split("")).sorted().mapToInt(Integer::parseInt).toArray();
    }
}