본문 바로가기

프로그래머스 - 코딩테스트

[Java][프로그래머스] - LVL. 0 문자열 뒤집기


정답 1

일딴 이 문제를 처음 접했을때 들었던 생각은 for문을 돌려서 인덱스를 거꾸로 집어넣어야겠다 라는 생각이다. 그래서 아래와 같이 코드를 짜보았다.

 

class Solution {
    public String solution(String my_string) {
        char[] arr = my_string.toCharArray();
        char[] afterManu = new char[arr.length];
        for(int i = 1; i <= arr.length; i++) {
            afterManu[i-1] = arr[arr.length-i];
        }
        String result = new String(afterManu);
        return result;
    }
}

결과는 정답이였다. 하지만 코드가 너무 난잡하고 깔끔하지 못하다. 리펙토링이 요한다.

찾아보니 StringBuilder 라는것이 있었다. 이것을 활용하여 문제에 대한 답을 훨씬 깔끔하게 정리할 수 있을것 같다.


정답 2

class Solution {
    public String solution(String my_string) {
        StringBuilder answer = new StringBuilder();
        answer.append(my_string);
        answer.reverse();
        return answer.toString();
    }
}

StringBuilder 를 사용하니 너무나도 편안하게 해당 String 값을 뒤집었다.

StringBuilder 에 대해서 좀더 알아봐야할 것 같다.

 

StringBuilder 는 String 값을 가지고 놀기에 딱 좋은 기능이다.