목록hashCode() (2)
판봉 개발 일기
HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션이다. HashMap의 키로 사용할 객체는 hashCode()와 equals()메소드를 재정의해서 동등 객체가 될 조건을 정해야 한다. 그 이유는 객체가 달라도 동등 객체라면 같은 키로 간주하고 중복 저장되지 않도록 하기 위함이다. ※동등 객체의 조건은 hashCode()의 리턴값이 같아야 하며, equals() 메소드가 true를 리턴해야 한다. (주로 키는 String을 잘씀) HashMap을 생성하는 방법은 아래와 같다 Map map = new HashMap(); 주의 할 점으로는 키와 값의 타입은 기본타입을 사용할 수 없으며 클래스 및 인터페이스 타입만 사용이 가능하다. 밑은 키를 String타입, 값으로 Integer 타입을 사용하..
HashSet은 Set 인터페이스의 구현 클래스이다. HashSet을 생성하는 방법은 다음과 같이 기본 생성자를 호출하면 된다. Set set = new HashSet(); String 객체를 저장하는 HashSet은 다음과 같이 생성할 수 있다. Set set = new HashSet(); Set set = new HashSet(); 무언가 어디서 많이 본것 같은건 비밀.. HashSet은 객체들을 순서 없이 저장하고 동일한 객체는 중복 저장하지 않는다는게 포인트이다. HashSet이 판단하는 동일한 객체란 꼭 같은 인스턴스만을 의미하지 않는다. HashSet은 객체를 저장하기 전에 먼저 hashCode()메소드를 호출하여 해시코드를 얻고, 객체들의 해시코드를 비교한다. 만약 동일한 해시코드가 있다면 ..