[Java] equals 와 '=='

정석·2023년 12월 20일

Java

목록 보기
14/39
post-thumbnail

값을 비교하는 의미로 봤을 때는 두개가 동등하다.

하지만 자세히 보면 이 둘은 다른 메소드이다.

1. equals

  • 사용 예시
public class Main {

	public static void main(String[] args) throws IOException {
		Scanner scan = new Scanner(System.in);
		
		String a = scan.next();
		String b = scan.next();
		
		System.out.println(a);
		System.out.println(b);
		
		if(a.equals(b)) {
			System.out.println("True");
		} else {
			System.out.println("False");
		}
	}
		
}
  • a 와 b 의 값을 비교한다.

2. ==

  • 사용 예시
public class Main {

	public static void main(String[] args) throws IOException {
		Scanner scan = new Scanner(System.in);
		
		int a = scan.nextInt();
		String b = scan.nextInt();
		
		System.out.println(a);
		System.out.println(b);
		
		if(a==b) {
			System.out.println("True");
		} else {
			System.out.println("False");
		}
	}
		
}
  • a 와 b 의 주소값을 비교한다. 원시자료형의 경우에는 값의 비교가 되고, 객체 타입의 경우 주소값을 비교하게 된다.

0개의 댓글