-
equals vs == 차이언어/자바 2025. 6. 11. 14:55
== 는 주소 비교
equals 값 비교
사용자 정의 함수는 equals가 존재하지 않는다.
하지만, String, Integer에는 equals가 재정의 되어 있다.
우리가 직접 만든 Student s = new Student(); 는 안에 equals가 존재하지도 재정의 되지 않았다.
-> 재정의를 하지 않으면, 주소값만 따진다.(물리적 동일성) -> 재정의 후에는 논리적 동일성을 가진다.
- 논리적 동일성(값)을 비교한다.
[정리]
== 논리적으로 주소 값 비교...
하지만,
직접
// @Override
// public boolean equals(Object obj) {
// if(obj instanceof _03_Student) {
// _03_Student std = (_03_Student)obj;
// if(this.studentId == std.studentId)
// return true;
// else return false;
// }
// return false;
// }비교함...
'언어 > 자바' 카테고리의 다른 글
예외 처리 -- 2 (0) 2025.06.12 예외 처리 (0) 2025.06.11 Object 부모 클래스 (0) 2025.06.09 Iterator (0) 2025.06.09 정보처리기사 실기 용어 정리 (0) 2025.06.06