連想配列
配列の値を取得する時に番号を用いて行ってきました。「HashMap」を利用するとキー値で値を取得できます。キー値で値を管理する配列を「連想配列」と呼ぶことがあります。
プログラム例&実行結果
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 |
package step14; import java.util.HashMap; import java.util.Map; public class Test08 { public static void main(String[] args) { Map<String, String> locate = new HashMap<String, String>(); locate.put("北海道","札幌"); locate.put("神奈川","横浜"); locate.put("愛知","名古屋"); locate.put("兵庫","神戸"); locate.put("福岡","福岡"); System.out.println(locate.get("愛知")); System.out.println("【キー取得】"); for(String key:locate.keySet()) { System.out.println(key); } System.out.println("【値取得】"); for(String value:locate.values()) { System.out.println(value); } System.out.println("【キーと値を取得】"); for(Map.Entry<String, String> entry : locate.entrySet()) { System.out.println(entry.getKey()+":"+entry.getValue()); } } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
名古屋 【キー取得】 神奈川 北海道 愛知 兵庫 福岡 【値取得】 横浜 札幌 名古屋 神戸 福岡 【キーと値を取得】 神奈川:横浜 北海道:札幌 愛知:名古屋 兵庫:神戸 福岡:福岡 |
メソッド
HashMapはJavaが用意しているクラスで多くのメソッドが定義されています。このプログラムでは、11行目~「put」で配列に”キー”、”値”を格納しています。具体的には11行目で”北海道”をキーにして”札幌”の値を格納しています。
11 12 13 14 15 |
locate.put("北海道","札幌"); locate.put("神奈川","横浜"); locate.put("愛知","名古屋"); locate.put("兵庫","神戸"); locate.put("福岡","福岡"); |
次に14行目で「get」メソッドで「愛知」をキーとして値を取得しています。
14 |
System.out.println(locate.get("愛知")); |
19行目から30行目でキー、値を全件表示していますので、参考にしてください。
19 20 21 22 23 24 25 26 27 28 29 30 |
System.out.println("【キー取得】"); for(String key:locate.keySet()) { System.out.println(key); } System.out.println("【値取得】"); for(String value:locate.values()) { System.out.println(value); } System.out.println("【キーと値を取得】"); for(Map.Entry<String, String> entry : locate.entrySet()) { System.out.println(entry.getKey()+":"+entry.getValue()); } |
その他のメソッドはJavaのドキュメントなどで確認してください。