• 카테고리

    질문 & 답변
  • 세부 분야

    백엔드

  • 해결 여부

    미해결

값타입 비교법 equals()

24.01.14 16:43 작성 24.01.14 16:46 수정 조회수 161

0

강의 "값타입 비교" 에서 equals를 오버라이드해서 쓰셨는데 저는 항상 그냥 특정 스트링이나 객체가 같은지 비교할때 equals썼었거든요 그렇게 하면 안됐던건가요?? 어떤경우든 항상 객체에 맞게 오버라이드해야하나요??

답변 1

답변을 작성해보세요.

1

David님의 프로필

David

2024.01.14

안녕하세요. hoon님, 공식 서포터즈 David입니다.

객체의 참조 값을 비교하려면 재정의 없이 equals를 사용하시면 됩니다.

그러나 강의 내용처럼 객체가 가지고 있는 특정 필드의 값을 비교하여 두 객체가 같은지 비교하려면 equals를 재정의하셔야 합니다.

String은 조금 특수한 경우인데 다음 글을 참고해 주세요.

https://inpa.tistory.com/entry/JAVA-%E2%98%95-String-%ED%83%80%EC%9E%85-%ED%95%9C-%EB%88%88%EC%97%90-%EC%9D%B4%ED%95%B4%ED%95%98%EA%B8%B0-String-Pool-%EB%AC%B8%EC%9E%90%EC%97%B4-%EB%B9%84%EA%B5%90#%EC%9E%90%EB%B0%94_string_%EC%A3%BC%EC%86%8C%ED%95%A0%EB%8B%B9_%EB%B0%A9%EC%8B%9D

감사합니다.