본문 바로가기

명사 美 비격식 (무리 중에서) 아주 뛰어난[눈에 띄는] 사람[것]

JAVA

HashTable 보다 새버전인 HashMap

HashMap과 HashTable

HashTable 보다 새버전인 HashMap을 사용할것을 권장한다.

Map의 특징, 키와 값을 묶어서 하나의 데이터를 저장한다는 특징을 갖는다.

https://standout.tistory.com/1368

 

키과 값을 하나의 쌍으로 묵어서 저장하는 컬렉션 클래스, Map

Map인터페이스 Map인터페이스는 키과 값을 하나의 쌍으로 묵어서 저장하는 컬렉션 클래스 키는 중복될 수 없지만 값은 중복을 허용한다. 예로 Hashtable, HashMap, LinkedHashMap, SortedMap, TreeMap이 있다. * Ma

standout.tistory.com

 

HashMap()

기본 생성자로, 초기 용량(capacity)이 16이고 기본 로드 팩터(load factor)가 0.75인 빈 HashMap을 생성합니다.

HashMap<String, Integer> hashMap = new HashMap<>();

 

HashMap(int initialCapacity)

주어진 초기 용량으로 빈 HashMap을 생성합니다.

HashMap<String, Integer> hashMap = new HashMap<>(20);

 

 

HashMap(int initialCapacity, float loadFactor)

주어진 초기 용량과 로드 팩터로 빈 HashMap을 생성합니다.

HashMap<String, Integer> hashMap = new HashMap<>(20, 0.5f);

 

 

HashMap(Map m)

주어진 Map의 모든 요소를 포함하는 HashMap을 생성합니다.

HashMap<String, Integer> map = new HashMap<>();
map.put("a", 1);
map.put("b", 2);

HashMap<String, Integer> hashMap = new HashMap<>(map);

 

 

void clear()

HashMap에서 모든 매핑을 제거합니다.

hashMap.clear();

 

 

Object clone()

HashMap의 얕은 복사본을 생성하여 반환합니다.

HashMap<String, Integer> copyMap = (HashMap<String, Integer>) hashMap.clone();

 

 

boolean containsKey(Object key)

주어진 키가 HashMap에 포함되어 있는지 여부를 반환합니다.

System.out.println(hashMap.containsKey("a")); // true

 

 

boolean containsValue(Object value)

주어진 값이 HashMap에 포함되어 있는지 여부를 반환합니다.

System.out.println(hashMap.containsValue(1)); // true

 

 

Set entrySet()

HashMap의 모든 매핑을 포함하는 Set을 반환합니다.

Set<Map.Entry<String, Integer>> entrySet = hashMap.entrySet();

 

Object get(Object key)

지정된 키에 매핑된 값 또는 null을 반환합니다.

System.out.println(hashMap.get("a")); // 1

 

 

Object getOrDefault(Object key, Object defaultValue)

지정된 키에 매핑된 값이 있으면 해당 값을 반환하고, 그렇지 않으면 기본값을 반환합니다.

System.out.println(hashMap.getOrDefault("c", 0)); // 0

 

 

boolean isEmpty()

HashMap이 비어 있는지 여부를 반환합니다.

System.out.println(hashMap.isEmpty()); // false

 

 

Set keySet()

HashMap의 모든 키를 포함하는 Set을 반환합니다.

Set<String> keySet = hashMap.keySet();

 

 

Object put(Object key, Object value)

지정된 키에 지정된 값으로 매핑된 이전 값(있으면)을 반환합니다.

System.out.println(hashMap.put("c", 3)); // null

 

 

void putAll(Map m)

주어진 Map의 모든 매핑을 HashMap에 추가합니다.

HashMap<String, Integer> anotherMap = new HashMap<>();
anotherMap.put("d", 4);
anotherMap.put("e", 5);

hashMap.putAll(anotherMap);

 

 

Object remove(Object key)

지정된 키에 매핑된 값을 제거합니다.

System.out.println(hashMap.remove("a")); // 1

 

 

Object replace(Object key, Object value)

지정된 키에 매핑된 값을 새 값으로 대체하고 이전 값(있으면)을 반환합니다.

System.out.println(hashMap.replace("c", 30)); // 3

 

 

boolean replace(Object key, Object oldValue, Object newValue)

지정된 키에 매핑된 값이 주어진 이전 값과 같으면 새 값으로 대체합니다.

System.out.println(hashMap.replace("c", 3, 30)); // true

 

 

int size()

HashMap에 포함된 매핑의 수를 반환합니다.

System.out.println(hashMap.size());

 

 

Collection values()

HashMap의 모든 값을 포함하는 Collection을 반환합니다.

Collection<Integer> values = hashMap.values();