[Java]Map(マップ)のキー(Key)を配列として取得するには?

Java

どうも、ちょげ(@chogetarou)です。

Map(マップ)の全てのキー(Key)を配列(Array)として取得する方法を紹介します。

スポンサーリンク

方法

インターフェース, インターネット, プログラム, ブラウザ, Www

Map(マップ)の全てのキー(Key)を配列(Array)として取得するには、keySet()とtoArray()を使います。

まず、MapからkeySet()を呼び出します。

keySet()からtoArray()を呼び出します。

そして、toArray()の引数に「new T[0]」(T=Mapのキーの型)を指定します。

//T=キーの型
T[] keys = map.keySet().toArray(new T[0]);

上記のtoArray()は、keySet()を呼び出したMap(マップ)の全てのキーを配列として取得します。

使用例

import java.util.*;
public class Main {
    public static void main(String[] args) throws Exception {
        Map<String, Integer> numbers = new HashMap<String, Integer>();
        numbers.put("one", 1);
        numbers.put("two", 2);
        numbers.put("three", 3);
        numbers.put("four", 4);
        numbers.put("five", 5);
        
        String[] keys = numbers.keySet().toArray(new String[0]);
        
        for (String key : keys) {
            System.out.println(key);
        }
    }
}
出力:
four
one
two
three
five

コメント

タイトルとURLをコピーしました