본문 바로가기
✨ Java/컬렉션 프레임워크(CollectionFramework)

자바(JAVA) - 컬렉션프레임워크 Map

by 환풍 2023. 2. 15.
728x90
반응형

 

Map의 가장 중요한 점은 Set과 List와 달리 < > 안에 두가지 자료형을 받는다는 것이다.

Map( K , V ) 와 같은 방법으로 쓴다. K= 키,  V = 값을 저장한다.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
package map;
 
import java.util.HashMap;
import java.util.Map;
 
public class Map01 {
    public static void main(String[] args) { 
// Map도 기본 자료형 못들어온다.  
// 통상적으로 Map( K , V) K= 키, V= 값
 
        // Map 객체 생성.
        Map<Integer, String>  map = new HashMap<>();
        
        //데이터 삽입
        map.put(1,"홍길동");
        map.put(2,"홍길동"); 
        // V 값은 중복 가능해서 여기까지 실행가능.
        map.put(3,"김길동");
        map.put(3,"박길동"); 
        // K 키의 값이 3으로 두개로 중복이된다.
        // 따라서 마지막 값인 박길동만 출력.
 
        //데이터 조회
        // Map데이터는 Key로 데이터에 접근.
        // Key가 중복이면 가장 최근에 들어간 데이터만 저장된다.
        System.out.println(map.get(3));
        System.out.println(map.get(1));  
        // get( ) 겟에 들어갈 숫자는 K의 값을 넣는 것이다. 
        // *중요* 키가 몇인 데이터를 갖고올것이냐?
 
        //map 데이터 삭제
        map.remove(2); // 키 값이 2인 데이터 삭제.
        System.out.println(map.get(2));
 
        //map의 어려운점 = 맵에 들어간 전체 데이터 조회.
 
    }
}
 
cs

 

K의 값이 중복되면 값은 마지막에 저장한 값 하나만 출력할 수 있다.

 

 


 

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
package map;
 
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
 
public class Map02 {
    public static void main(String[] args) {
        Map<Integer, String> map = new HashMap<>();
        map.put(22"김자바");
        map.put(55"최자바");
        map.put(30"윤자바");
        
        //map 전체 데이터 조회
        Set<Integer> keySet = map.keySet();
 
        for(int key : keySet){
            System.out.println("Key : " + key + " / Value : " + map.get(key) );
        }
    }
}
 
cs

 

map에 저장된 모든 키 정보를 조회하려면, keySet( ) 을 사용해야한다. 

keySet( ) 은 map에 저장된 키들을 set형태로 반환할 수 있다.

 

728x90
반응형

댓글