Notice
Recent Posts
Recent Comments
Link
SeouliteLab
[Java/자바] hashCode() 메서드 구현 방법 본문
hashCode() 메서드란?
Java에서 모든 객체는 Object 클래스로부터 상속받는 hashCode() 메서드를 가지고 있습니다. 이 메서드는 객체의 해시 코드를 반환합니다. 해시 코드는 객체의 고유한 정수 식별자로 사용됩니다.
hashCode() 메서드의 구현 방법
hashCode() 메서드를 구현하는 방법은 다음과 같습니다:
- 객체의 중요한 속성들로부터 해시 코드 생성: 객체의 필드를 사용하여 해시 코드를 생성합니다. 중요한 필드가 변경될 때마다 같은 객체에 대해 항상 동일한 해시 코드를 반환해야 합니다.
- 해시 코드 계산 알고리즘 선택: 각 필드의 해시 코드를 결합하여 최종 해시 코드를 계산합니다. 이때 일반적으로는 각 필드의 해시 코드를 곱하거나 더한 후에 결합합니다.
- hashCode() 메서드 재정의: Object 클래스의 hashCode() 메서드를 재정의하여 원하는 해시 코드를 반환하도록 구현합니다.
hashCode() 메서드 구현 예제
아래 예제는 hashCode() 메서드를 구현하는 간단한 클래스를 보여줍니다.
public class Person {
private String name;
private int age;
public Person(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public int hashCode() {
int result = name.hashCode();
result = 31 * result + age;
return result;
}
public static void main(String[] args) {
Person person = new Person("John", 30);
System.out.println("HashCode for person: " + person.hashCode());
}
}
'프로그래밍' 카테고리의 다른 글
[Java/자바]- Stream의 filter() 메서드 사용 방법과 예제 (0) | 2024.03.09 |
---|---|
[Java/자바] Stream.reduce() 메서드 사용 방법과 예제 (0) | 2024.03.09 |
[Java/자바] hashCode() 메서드와 사용 이유 (0) | 2024.03.09 |
[Java/자바] 문자열의 첫 글자를 대문자로 변환하는 방법 (0) | 2024.03.09 |
[Java/자바] List 인터페이스: 데이터 구조 다루기 (0) | 2024.03.09 |