ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 컬렉션 - MAP 출력 방법
    백엔드/자바 2020. 8. 17. 02:25

    컬렉션에서 List와 Set은 데이터를 읽어오기가 간편하다.

     

    반면 Map의 경우 데이터가 키(key), 값(value)로 나뉘다보니 상대적으로 읽기가 까다롭다.

     

    그래서 이번 포스트에선 Map 데이터를 읽어오는 방법에 대해 정리하고자 한다.

    forEach + keySet( ) 이용하기

    keySet( ) 함수를 이용해서 key만 따로 Set 형태로 저장한다.

     

    그 뒤 for-each 문을 이용해서 추출한 key를 get( ) 메서드를 써서 값(value)을 얻어내면 된다.

     

    public static void main(String[] args) {
    
            Map player = new TreeMap();
    
            player.put("야구", "류현진");
            player.put("축구", "손흥민");
            player.put("피겨", "김연아");
    
            Set player_key = player.keySet();
    
            for(Object i: player_key) {
                System.out.println(i+" : "+player.get(i));
            }
        }

     

     

    forEach + entrySet( ) 이용하기

    entrySet( ) 메서드를 이용해서 추출한 Set을 key와 value를 가진 Entry 형태로 저장한다.

     

    Entry 변수에서 getkey( ), getValue( ) 메서드를 이용해서 데이터를 읽어온다.

     

    단, 이때 주의할 점은 Map자료를 선언할 때 지네릭스를 써줘야 한다.

     

    public static void main(String[] args) {
    
            Map <String, String> player = new TreeMap();
    
            player.put("야구", "류현진");
            player.put("축구", "손흥민");
            player.put("피겨", "김연아");
    
            for(Map.Entry i : player.entrySet()) {
                System.out.println(i.getKey()+" : "+i.getValue());
            }
    
        }

     

    iterator + keySet( ) 이용하기

    keySet( ) 메서드를 이용해서 map 자료의 key를 Set으로 추출한다.

     

    해당 set을 이용해 iterator 객체를 호출한다.

     

    while문이 반복될 때 추출한 키와 해당 키를 이용해 get() 메서드로 value를 읽어와서 출력한다.

     

    public static void main(String[] args) {
    
            Map player = new TreeMap();
    
            player.put("야구", "류현진");
            player.put("축구", "손흥민");
            player.put("피겨", "김연아");
    
            Iterator it = player.keySet().iterator();
    
            while (it.hasNext()){
                Object key = (String) it.next();
    
                System.out.print(key);
                System.out.println(" : "+player.get(key));
            }
        }

     

    iterator + entrySet( ) 이용하기

    entrySet() 메서드를 이용해서 map의 key, value를 set으로 호출한다.

     

    set을 이용해서 iterator 객체를 호출한다.

     

    while문이 반복될 때 반환된 객체를 Entry 객체로 형 변환.

     

    Entry 객체의 getKey()와 getValue() 메서드를 이용해 키와 값을 읽어와서 출력함.

     

    public static void main(String[] args) {
    
            Map player = new TreeMap();
    
            player.put("야구", "류현진");
            player.put("축구", "손흥민");
            player.put("피겨", "김연아");
    
            Iterator it = player.entrySet().iterator();
    
            while (it.hasNext()){
                Map.Entry entry = (Map.Entry) it.next();
    
                System.out.print(entry.getKey());
                System.out.println(" : "+entry.getValue());
            }
        }

     

    '백엔드 > 자바' 카테고리의 다른 글

    컬렉션 - Comparable와 Comparator  (0) 2020.08.17
    컬렉션 - iterator, Listiterator, Enumeration  (0) 2020.08.17
    컬렉션 Map - TreeMap  (0) 2020.08.17
    컬렉션 Map - HashMap  (0) 2020.08.17
    컬렉션 Set - TreeSet  (0) 2020.08.16
Designed by Tistory.