HashMap은 Map의 종류 중 하나인데, key값과 value 쌍으로 이루어진 데이터를 저장한다.
Map과 HashMap의 차이는 map은 red-blcak-tree 알고리즘을 사용하고,
Hashmap은 Hashtable을 이용해 key-value를 유지한다.
key값은 중복이 불가능하지만, value값은 중복이 가능하다.
선언방법
HashMap<Key값 자료형, Value값 자료형> 변수이름 = new Hashmap<>();
HashMap 메서드 정리
1. put(key, value) => key, value값 저장, 중복된 key에 대한 value는 마지막에 저장된 value값으로 update
2. putAll(Object) => 인자로 전달된 Map에 대한 모든 데이터를 저장한다.
3. get(Object key) => key에 해당하는 value값을 리턴해준다.
4. remove(Object key) => key에 해당하는 데이터 삭제
5. clear() => Hashmap의 모든 데이터 삭제
6. isEmpty() => 데이터가 비어있으면 true, 아니면 else
7. keySet() => HashMap에 저장된 Key를 Set 객체로 리턴 => Set<Key> 변수이름 = HashMap 변수 =이름.KeySet()
8.containsKey(Object Key) => HashMap에 전달된 key값이 존재하면 true, 아니면 else
HashSet이란 ?
Set 인터페이스에서 지원하는 구현 클래스이다.
순서대로 입력되지 않고, 일정하게 유지되지 않는다.
가장 큰 기능은 중복을 제거해주는 역할을 한다는 점이다.
선언방법
HashSet<데이터 타입> 변수명 = new HashSet<데이터타입>();
HashSet 메서드 정리
add(value) => 값 추가
remove(value) => 값 제거
size() => HashSet의 크기 구하기
contains(value) => value값이 HashSet에 존재한다면 true, 아니면 false 반환
<참고자료>
https://codechacha.com/ko/java-map-hashmap/
https://crazykim2.tistory.com/474
'Java > Java Concept' 카테고리의 다른 글
[Java] EnumSet에 대해서 (1) | 2023.11.13 |
---|---|
[Java] 객체지향 사실과 오해 1- 협력하는 객체들의 공동체 (0) | 2023.03.10 |
ArrayList<E> 클래스 및 제네릭 함수 개념 (0) | 2022.08.13 |
메소드 오버라이딩(Method Overriding) 개념 (0) | 2022.08.09 |
상속(inheritance) (0) | 2022.08.09 |