728x90
Map
자료구조 Map의
메서드입니다.
What ?
메서드1. put(K key, V value)
키(key)와 값(value)을 Map에 저장합니다. 이미 존재하는 키일 경우, 값이 덮어씌워집니다.
import java.util.*;
...
Map<String, Integer> ExampleMap = new HashMap<>();
ExampleMap.put("Apple", 100);
ExampleMap.put("Banana", 200);
2. get(Object key)
키(key)에 해당하는 값(value)을 반환합니다. 키가 존재하지 않으면 null을 반환합니다.
Integer applePrice = ExampleMap.get("Apple");
// 100을 반환
Integer nullPrice = ExampleMap.get("Null");
// null 반환
3. containsKey(Object key)
키(Key)가 Map에 존재하는지 확인합니다. 존재하면 true, 아니면 false를 반환합니다.
boolean hasApple = map.containsKey("Apple");
// true 반환
boolean hasPeach = map.containsKey("Peach");
// false 반환
4. containsValue(Object value)
주어진 값(Value)이 Map에 존재하는지 확인합니다. 존재하면 true, 아니면 false를 반환합니다.
boolean hasValue = map.containsValue(100);
// true 반환
boolean hasOtherValue = map.containsValue(1000);
// false 반환
5. remove(Object key)
주어진 키(Key)와 그에 해당하는 값(Value)을 Map에서 삭제합니다. 삭제된 값은 반환됩니다.
Integer removedValue = map.remove("Apple");
// "Apple" 키(Key)와 그에 해당하는 값(Value) 삭제
6. size( )
Map에 저장된 키(Key) - 값(Value) 쌍의 수를 반환합니다.
int size = map.size();
// Map에 있는 항목의 개수
7. isEmpty( )
Map이 비어 있는지 확인합니다. 비어 있으면 true, 그렇지 않으면 false를 반환합니다.
boolean isEmpty = map.isEmpty();
// Map이 비어 있으면 true 반환
8. clear( )
Map에서 키(Key) - 값(Value) 쌍을 삭제합니다. remove와 달리 전체를 삭제합니다.
map.clear();
// 모든 항목 삭제
9. keySet( )
Map에 저장된 모든 키(Key)를 반환하는 Set을 반환합니다.
Set<String> keys = map.keySet();
// "Apple", "Banana" 등의 키를 반환
10. values( )
Map에 저장된 모든 값을 반환하는 Collection을 반환합니다.
Collection<Integer> values = map.values();
// 100, 200 등의 값 반환
11. entrySet( )
Map에 저장된 모든 키-값 쌍을 Set<Map.Entry<K, V>> 형태로 반환합니다. Map의 키와 값을 묶은 객체입니다.
Set<Map.Entry<String, Integer>> entrySet = map.entrySet();
for (Map.Entry<String, Integer> entry : entrySet) {
System.out.println(entry.getKey() + ": " + entry.getValue());
}
12. putIfAbsent(K key, V value)
키가 존재하지 않으면 값을 저장하고, 존재하면 값을 저장하지 않습니다. 키가 없을 때만 값을 넣는 경우에 사용됩니다.
map.putIfAbsent("Apple", 150);
// "Apple"이 없으면 150을 저장, 있으면 아무 일도 일어나지 않음
13. replace(K key, V oldValue, V newValue)
주어진 키(Key)가 존재하고, 그 값(Value)이 oldValue와 같으면 새로운 값(Value)으로 교체합니다.
boolean replaced = map.replace("Apple", 100, 120);
// "Apple"이 100일 경우 120으로 변경
14. replace(K key, V value)
주어진 키(Key)에 해당하는 값(Value)을 새로운 값(Value)으로 교체합니다.
map.replace("Apple", 120);
// "Apple"의 값을 120으로 변경
15. forEach(BiConsumer<? super K, ? super V> action)
Map의 모든 항목에 대해 주어진 동작을 수행합니다.
map.forEach((key, value) -> System.out.println(key + ": " + value));
// 모든 항목 출력
728x90