풀이

1. String 을 char배열로 변환 후 정렬한다.

2. StringBuilder 생성 후 정렬한걸 거꾸로 넣어준다.

3. 다시 String 으로 변환 후 리턴

 public String solution(String s) {
       // String 을 char배열로 변환 후 정렬한다.
        char[] aso = s.toCharArray();
        Arrays.sort(aso);
        
        // StringBuilder 생성 후 정렬한걸 거꾸로 넣어준다.
        StringBuilder sb = new StringBuilder();
        for (int i = s.length() - 1; i > -1; i--) {
            sb.append(aso[i]);
        }
        
        // 다시 String 으로 변환 후 리턴
        String res = sb.toString();
        return res;
    }

 

다른 풀이

1. String을 char배열로 변환 후 정렬

2.

  • char배열을 String객체로 변환 > new String(sol)
  • String으로 변환한걸 StringBuilder객체로 변환 > new StringBuilder(new String(sol))
  • StringBuilder로 변환한걸 역으로 정렬 > new StringBuilder(new String(sol)).reverse()
  • 한걸 String으로 변환 > new StringBuilder(new String(sol)).reverse().toString(); 
 public String reverseStr(String str){
    char[] sol = str.toCharArray();
    Arrays.sort(sol);
    return new StringBuilder(new String(sol)).reverse().toString();
    }

+ Recent posts