==와 equals

Jan 28, 2024
==와 equals

1. ==와 equals

1. ==

💡
==는 값과 주소를 모두 비교할 수 있다. 다만, 프리미티브 타입은 ‘값’을 비교하고, 레퍼런스 타입은 ‘주소’를 비교한다.
notion image
여기서 ==는 메모리 주소를 비교하는 것! account랑 account2는 다르니 결과 출력 X
 

2. equals

notion image
결과 출력 X
notion image
 

3. 상태값을 비교하는 법 .toString().equals()

notion image
account.equals() -> 오브젝트. 주소 비교 account.toString() -> equals() (주소 비교와 값비교)
account.toString()는 String 타입이다. account.toString()는 " ".equals로 똑같이 쓸 수 있다. * 오브젝트가 들고있는 주소를 비교한 것
 

3-1. 왜 이렇게 나오나?

notion image
equals를 ctrl + 좌클릭 해서 확인하면 이렇게, 먼저 주소를 비교하고, 동일하지 않으면 값을 비교하게 되어있어서 그런 것. 즉, equals는 값을 2번 비교하고, 객체의 상태를 비교할 때는 toString equals를 사용한다!!
 

Share article

codingb