package Baekjoon;
import java.util.Scanner;
public class pald {
public static void main(String [] args) {
Scanner input = new Scanner(System.in);
String a = input.nextLine();
StringBuilder sb = new StringBuilder();
sb.append(a);
if(a.equals(sb.reverse().toString())) System.out.println(1);
else System.out.println(0);
}
}
reverse() 메소드를 사용해주었다
String에 reverse() 메소드가 있다면 좋겠지만 그렇지 않기 때문에 StringBuilder를 이용했다
equals() 메소드를 이용할 땐 비교대상 두 개가 모두 String 타입인 상태에서 이용해야 제대로 비교가 되는듯
서치 결과 내가 짐작한 게 맞았다 !
String 클래스는 값을 비교하도록 equals() 메서드가 재정의되었지만, StringBuilder 클래스는 equals() 메서드가 재정의되지 않았기에 여전히 참조하고 있는 주소 값을 비교한다고 한다
따라서 StringBuilder의 값을 비교하고 싶다면 toString() 을 이용한다
'언어 공부 내용 정리 > 백준' 카테고리의 다른 글
백준 자바 2884, 1152 / split() , StringTokenizer() 비교 (0) | 2023.06.09 |
---|---|
백준 자바 문자열 : 27866, 9086, 11654, 10809 (0) | 2023.06.05 |
백준 자바 10952,10951 (0) | 2023.05.24 |
백준 자바 10807, 10871, 10818, 10813 (0) | 2023.05.23 |
백준 자바 10172 (0) | 2023.05.18 |