hashset(2)
-
컬렉션 프레임워크(1)_HashSet(2)
HashSet이 클래스를 담을 때는 내부 데이터가 같음에도 인스턴스가 다르기 때문에 객체가 2개 저장됨. Member 클래스에서 hashCode()와 equals()메소드 재정의를 통해 name과 age가 같으면 동일한 객체로 인식하도록 함. Member class의 hashCode()와 equals()메소드 재정의 후 인스턴스는 다르지만 내부 데이터가 동일하므로 HashSet에는 Member객체를 1개만 저장함.
2021.08.27 -
컬렉션 프레임워크(1)_HashSet(1)
1. HashSet 생성 Set set = new HashSet( ); Set set = new HashSet( );로도 사용할 수 있음. 파라미터E에는 컬렉션에 저장할 객체타입을 지정. 2. 특징 Set 컬렉션은 객체를 순서없이 저장, 동일한 객체는 중복 저장하지 않음(수학의 집합 개념과 유사) 3. 작동원리 객체의 hashCode() 메소드 리턴값과 이미 저장되어 있는 객체들의 해시코드값이 다른 경우 -> 저장. 만약 동일한 해시코드가 있다면, 다시 equals() 메소드 리턴값으로 두 객체를 비교 false가 나오면 ->다른 객체이므로 저장. true가 나오면 ->동일한 객체로 판단하여 중복 저장하지 않음. 4. Set 인터페이스의 메소드 기능 메소드 설명 객체 추가 boolean add(E e) ..
2021.08.27