Java - HashMapからkeyまたはvalue値のみを取得する

HashMapに格納されている要素のキー値のみをCollection(List or Set)にインポートする方法を紹介します。

1. HashMapからキーのみをインポートする

HashMap.keySet() は、要素のキーを 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]
codechachaCopyright ©2019 codechacha