[Java study] 1. Hashmap

📝Hash map 이란?

HashMap은 Map 인터페이스를 구현한 대표적인 Map 컬렉션이다. Map 인터페이스를 상속하고 있기에 Map의 성질을 그대로 가지고 있다. Map이라는 것은 키(key)와 값(value) 두 쌍으로 데이터를 보관하는 자료구조다. 여기서 키는 맵에 오직 유일하게 있어야 한다. 같은 맵에 동일한 키가 존재하면 안된다는 것이다. 이름 그대로 열쇠이기 때문에 그 열쇠로 짝인 값(value)를 찾아야 한다. 값은 중복된 값이어도 상관이 없다.

사용법 :

ex)

	public static void main(String[] args) {
		Map<String, Integer> map = new HashMap(); //키 자료형, 값 자료형
		map.put("김철수", 100);
		map.put("안철수", 200);
		map.put("신짱구", 300);
		map.put("신짱구", 400); //중복된 key가 들어갈때는 이전 키, 값을 지금의 것으로 업데이트 
		System.out.println(map);
		System.out.println(map.get("김철수"));
		System.out.println(map.get("안철수"));
		System.out.println(map.get("신짱구"));
	}

}

1.💻 출력:

map을 그냥 print로 출력하면 {}로 묶여 키와 값들이 출력된다. 기본적으로 map의 put, get이 아주 많이 사용된다. put은 키와 값을 map에 저장하는 메소드이며 get은 입력받은 key와 대응되는 값을 돌려준다. 만약 해당하는 key가 없다면 null을 넘겨주게 된다.

2.값 삭제: remove

ex)

	public static void main(String[] args) {
		Map<String, String> map = new HashMap(); //키 자료형, 값 자료형
		map.put("김철수", "kim");
		map.put("안철수", "ahan");
		map.put("신짱구", "sin");
		System.out.println(map);
		
		map.remove("김철수");
		System.out.println(map);
		
		map.clear();
		System.out.println(map);
	}

[결과]

3. 키 값의 유무 확인 : containsKey

키가 들어있는지 확인한다. 맵에서 인자로 보낸 key가 있으면 true, 없으면 false를 반환한다.

ex)

	public static void main(String[] args) {
		Map<String, String> map = new HashMap(); //키 자료형, 값 자료형
		map.put("김철수", "kim");
		map.put("안철수", "ahan");
		map.put("신짱구", "sin");
		
		System.out.println(map.containsKey("김철수"));
		System.out.println(map.containsKey("맹구"));
		
	}

[결과]

4. Value의 유무 확인 : containsValue

ex)

    public static void main(String[] args) {
		Map<String, String> map = new HashMap(); //키 자료형, 값 자료형
		map.put("김철수", "kim");
		map.put("안철수", "ahan");
		map.put("신짱구", "sin");
		
		System.out.println(map.containsValue("kim"));
		System.out.println(map.containsValue("na"));
		
	}

[결과]

5. 키의 총 개수

ex)

    public static void main(String[] args) {
		Map<String, String> map = new HashMap(); //키 자료형, 값 자료형
		map.put("김철수", "kim");
		map.put("안철수", "ahan");
		map.put("신짱구", "sin");
		
		System.out.println(map.size());
		
	}

[결과]

출처 : https://reakwon.tistory.com/151

좋은 웹페이지 즐겨찾기