ここでは、HashMap を使用してキー・バリュー形式でデータ管理を行う簡単なサンプルコードを掲載しています。Java に限らず多くの言語でも同じようなクラスが存在します。.NetFramework だと、Dictionary ジェネリッククラスが似ています。
スポンサーリンク
HashMap の簡単な使い方 ( 追加 / 削除 / ループ )
HashMap の使用例になります。詳細はコメントを参照ください。
/* * キー(String)と値(Integer)のハッシュマップを作成する */ HashMap<String, Integer> students = new HashMap<String, Integer>(); students.put("安倍", 55); // 安倍さん55歳をHashMapに追加 students.put("鳩", 95); // 鳩さん95歳をHashMapに追加 // 指定したキーを持つ要素が存在するか確認 if(students.containsKey("鳩")) { // 間違えて登録したので削除 students.remove("鳩"); } students.put("小泉", 65); // 小泉さん65歳をHashMapに追加 students.put("麻生", 75); // 麻生さん75歳をHashMapに追加 // ハッシュマップのキーと値をすべて出力する for (Entry<String, Integer> e : students.entrySet()) { System.out.println(e.getKey() + " : " + e.getValue()); // 値を100で更新する e.setValue(100); } /* * 出力結果 * ----------------- * 小泉 : 65 * 麻生 : 75 * 安倍 : 55 */ // 上記で更新した値が反映されているか確認する for (Entry<String, Integer> e : students.entrySet()) { System.out.println(e.getKey() + " : " + e.getValue()); } /* * 出力結果 * ----------------- * 小泉 : 100 * 麻生 : 100 * 安倍 : 100 */
注意点
上記の出力結果からわかるように、put メソッドによって追加した要素が追加した順番で HashMap クラスで管理されているわけではありません。マニュアルにも「その順序を常に一定に保つことを保証しない」と記載されています。追加した順序を維持したまま要素を管理したい場合には HashMap ではなく、LinkedHashMap の代替利用を考えたほうがよいでしょう。
参考