「Java」HashMapへArrayListデータを格納、取り出すサンプル
書式
Map<String, List<クラス名> cftMp = new HashMap<String, List<クラス名>>();
使用例
package com.arkgame.study.map;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
//Usersクラスの定義
class Users {
private int age;
/**
* @return age
*/
public int getAge() {
return age;
}
/**
* @param age セットする age
*/
public void setAge(int age) {
this.age = age;
}
}
//mainクラス
public class MapListDemo {
protected static final String cftKey = "kk01";
public static void main(String[] args) {
// オブジェクトusA、usBの作成
Users usA = new Users();
Users usB = new Users();
usA.setAge(21);
usB.setAge(32);
// ArrayListへオブジェクトを追加
List<Users> luLst = new ArrayList<Users>();
luLst.add(usA);
luLst.add(usB);
// 関数mapElementFuncを呼び出す
mapElementFunc("key2021", luLst);
}
// HashMapにArrayListを格納、取り出す
public static void mapElementFunc(String str, List<Users> targetLst) {
// HashMapの定義
Map<String, List<Users>> cftMp = new HashMap<String, List<Users>>();
// HashMapにリストを追加
cftMp.put(cftKey, targetLst);
cftMp.put("k002", targetLst);
// キー存在チェック
if (cftMp.containsKey(cftKey)) {
// オブジェクトを取り出す リスト要素を取り出す
for (Users us : targetLst) {
System.out.println("リストの要素: " + us.getAge());
}
}
}
}
実行結果
リストの要素: 21
リストの要素: 32