Java/Java Concept

[Java] HashMap, HashSet 개념정리

SeungbeomKim 2022. 10. 31. 11:29

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/

 

Java - HashMap 사용 방법 및 예제

HashMap은 Map의 일종으로 key와 value의 쌍으로 이루어진 데이터를 보관합니다. HashMap은 데이터의 저장순서를 보장하지 않으며 null을 허용합니다. 또한 put, putAll, get, remove, keySet, values 등의 API들을 제

codechacha.com

https://crazykim2.tistory.com/474

 

[JAVA] HashSet이란? & 사용법 정리

안녕하세요 최근 알고리즘을 공부하면서 자바의 다양한 클래스를 알게되고 있는데요 그 동안 개발을 하면서 많이 알고 있다고 생각했는데 끊임없이 나오네요 ㅠ HashSet 클래스에 대해서 설명해

crazykim2.tistory.com