어제 오늘 내일

[Java StringBuilder] reverse() – 문자열 뒤집기 본문

IT/Java

[Java StringBuilder] reverse() – 문자열 뒤집기

hi.anna 2025. 9. 21. 12:52

문자열을 거꾸로 뒤집어야 할 때, 직접 반복문을 돌려 구현할 수도 있지만

StringBuilder.reverse()를 쓰면 한 줄로 해결할 수 있습니다.

 

1. reverse() 기본 사용법

public StringBuilder reverse()
  • 현재 문자열의 문자 순서를 뒤집음
  • 반환값은 자기 자신(StringBuilder) → 메서드 체이닝 가능
StringBuilder sb = new StringBuilder("Hello");
sb.reverse();
System.out.println(sb.toString());
// 출력: olleH

👉 "Hello""olleH"로 뒤집혔습니다.

 

2. 실전 활용 예제

숫자 뒤집기

StringBuilder sb = new StringBuilder("12345");
sb.reverse();
System.out.println(sb.toString());
// 출력: 54321

👉 숫자를 문자열로 다룬 후 뒤집을 수 있습니다.

회문(Palindrome) 체크

String str = "level";
StringBuilder sb = new StringBuilder(str);

if (str.equals(sb.reverse().toString())) {
    System.out.println("회문입니다.");
} else {
    System.out.println("회문이 아닙니다.");
}
// 출력: 회문입니다.

👉 단어나 문장이 앞뒤가 같은지 쉽게 확인할 수 있습니다.

문자열 암호화(?) 응용

String password = "OpenAI123";
StringBuilder sb = new StringBuilder(password);
String encrypted = sb.reverse().toString();
System.out.println(encrypted);
// 출력: 321IAnepO

👉 간단한 문자열 변형에도 활용 가능합니다.

 

3. 주의할 점

  • reverse()원본을 직접 변경합니다.
    → 새로운 문자열이 생성되는 게 아니라 기존 StringBuilder 자체가 바뀜
StringBuilder sb = new StringBuilder("Java");
sb.reverse();
System.out.println(sb.toString()); // avaJ
  • 만약 원본을 유지하고 싶다면 toString()으로 String 복사 후 사용하는 게 안전합니다.

 

4. 정리

  • reverse()는 문자열을 거꾸로 뒤집는 기능
  • 숫자 변환, 회문 체크, 단순 암호화 등에 활용 가능
  • 원본이 변경되므로 필요하다면 복사 후 사용

👉 문자열을 뒤집고 싶다면, 반복문 대신 StringBuilder.reverse() 한 줄이면 충분하다!

 

 

반응형
Comments