본문 바로가기
백엔드개발자/JAVA

Map

by 보혀니 2022. 4. 25.

 map을 안써본지 너무 오래되어서 뚝딱거리는 나를 발견...

안쓰면 이렇게 쉽게 잊어버리는 뇌가 밉다ㅠㅠ

 

 

 

Map은 키,벨류 한쌍으로 값을 넣음.

Key로 식별하고 Value에 사용할 값 넣는 식

key는 중복 불가, 동일한 key 값으로 넣을시 최근에 넣은 값 적용

 

Map안에 값넣기

Map.put(key,value);

 

Map안의 값 가져오기

Map.get(key);

 

Map크기 확인

Map.size();

 

Map안에 특정 key, value가 들어있는지 확인

Map.containsKey(key);

Map.ContainsValue(value);

 

Map안에 내용 삭제 

Map.remove(key);

 

 

Map 선언시 

HashMap, TreeMap, HashTable, LinkedHashMap으로 선언 가능

차이점은???

 

HashMap

key/value에 따른 순서가 없음

 

TreeMap

key값에 따라서 오름차순 정렬

 

LinkedHashMap

삽인 순서에 따라서 정렬

 

HashTable

key/value에 null 넣기 가능

 

 

 

얼마전에 숫자배열 중복제거를 Map으로 하라는 문제를 받았는데 그 자리에서 바로 못풀었다...

public class Test2 {
	public static void main(String[] args) {

		int[] i = { 4, 3, 3, 4, 3, 6, 7 };

		Map<Integer, Object> map = new HashMap<Integer, Object>();
		
		for(int j=0;j<i.length;j++) {
			map.put(i[j], 0);
		}
		
		System.out.println(map.keySet());
	}
}

결과임

 

 

이렇게 풀었으면 됐으려나?

'백엔드개발자 > JAVA' 카테고리의 다른 글

프로세스, 스레드  (0) 2022.05.10
Math 클래스  (0) 2022.05.05
Collection(List, Set), Map  (0) 2022.04.07
Presentation Logic 과 Business Logic  (0) 2022.01.02
인터페이스 (자바의 정석)  (0) 2021.12.08