Java - HashMap에서 key 또는 value 값들만 가져오기

HashMap에 저장된 요소들의 key 값들만 Collection(List or Set)으로 가져오는 방법을 소개합니다.

1. HashMap에서 key들만 가져오기

HashMap.keySet()은 요소들의 key들을 Set 객체에 저장하고 Set 객체를 리턴합니다. ArrayList 생성자의 인자로 전달하면 리스트로 변환됩니다.

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Example {

    public static void main(String[] args) {

        Map<String, String> map = new HashMap<>();
        map.put("101", "apple");
        map.put("102", "kiwi");
        map.put("103", "orange");
        map.put("104", "banana");
        map.put("105", "peach");

        List<String> keyList = new ArrayList<>(map.keySet());

        System.out.println(keyList);
    }
}

Output:

[101, 102, 103, 104, 105]

2. HashMap에서 value들만 가져오기

HashMap.values()는 Collection 객체에 요소들의 value들을 저장하고 Collection 객체를 리턴합니다. ArrayList 생성자의 인자로 전달하여 리스트로 변환할 수 있습니다.

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

public class Example {

    public static void main(String[] args) {

        Map<String, String> map = new HashMap<>();
        map.put("101", "apple");
        map.put("102", "kiwi");
        map.put("103", "orange");
        map.put("104", "banana");
        map.put("105", "peach");

        List<String> valueList = new ArrayList<>(map.values());

        System.out.println(valueList);
    }
}

Output:

[apple, kiwi, orange, banana, peach]
Loading script...
codechachaCopyright ©2019 codechacha