본문 바로가기
IT/JAVA

[Algorithm] [LeetCode] 9. Palindrome Number, JAVA 문자열 거꾸로 뒤집기

by barrr 2023. 10. 17.

StringBuffer와 reverse()를 사용해서 문자열을 뒤집을 수 있다.

“ABCDE” -> “EDCBA”

밑에 코드를 참고하자

String str = "ABC";

StringBuffer buffer = new StringBuffer( str );
String revStr = buffer.reverse().toString(); //"CBA"

이런 식으로 StringBuffer의 reverse() 메소드를 통해서 거꾸로 뒤집을 수 있다.

나의 경우 leet code 9.Palindrome Number 문제는 아래와 같이 풀었다.

public static void main(String[] args) {

    int x = 121 ;

    boolean solution = new Solution(){
        public boolean isPalindrome(int x) {

            String temp = String.valueOf( x );

            StringBuffer buf = new StringBuffer( temp );
            String bufString = buf.reverse().toString();

            if ( temp.equals(bufString) ){

                 return true;
            }else {

                return false;
            }
        }
    }.isPalindrome( x );

    System.out.println( solution );
}

StringBuffer를 이용할 경우 성능면에서는 오래걸릴 수 있지만, 코드는 간단해지는 장점이 있다.

이 외에도 for문으로 풀이를 할 수도 있지만 이번에는 코드의 간결화를 좀 더 추구해 보았다.