「Java」拡張forループでMapのデータを取得するサンプル
書式
for (Map.Entry<String, List<クラス名>> mst : cftMap.entrySet()) {
使用例
1.Userクラスの定義
package com.arkgame.study.java.it;
public class User {
private String msg;
public User(String msg) {
super();
this.msg = msg;
}
/**
* @return msg
*/
public String getMsg() {
return msg;
}
/**
* @param msg セットする msg
*/
public void setMsg(String msg) {
this.msg = msg;
}
}
package com.arkgame.study.java.it;
public class User {
private String msg;
public User(String msg) {
super();
this.msg = msg;
}
/**
* @return msg
*/
public String getMsg() {
return msg;
}
/**
* @param msg セットする msg
*/
public void setMsg(String msg) {
this.msg = msg;
}
}
package com.arkgame.study.java.it; public class User { private String msg; public User(String msg) { super(); this.msg = msg; } /** * @return msg */ public String getMsg() { return msg; } /** * @param msg セットする msg */ public void setMsg(String msg) { this.msg = msg; } }
2.動作確認mainクラス
package com.arkgame.study.java.it;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ListObjDemo {
protected static Map<String, List<User>> cftMap = new HashMap<String, List<User>>();
public static void main(String[] args) {
List<User> uLstA = new ArrayList<User>();
List<User> uLstB = new ArrayList<User>();
User us1, us3;
us1 = new User("Auser001");
uLstA.add(us1);
cftMap.put("key01", uLstA);
us3 = new User("Buser002");
uLstB.add(us3);
cftMap.put("key02", uLstB);
for (Map.Entry<String, List<User>> mst : cftMap.entrySet()) {
System.out.println("キー:" + mst.getKey());
List<User> resLst = mst.getValue();
for (User res : resLst) {
System.out.println("値: " + res.getMsg());
}
}
}
}
package com.arkgame.study.java.it;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
public class ListObjDemo {
protected static Map<String, List<User>> cftMap = new HashMap<String, List<User>>();
public static void main(String[] args) {
List<User> uLstA = new ArrayList<User>();
List<User> uLstB = new ArrayList<User>();
User us1, us3;
us1 = new User("Auser001");
uLstA.add(us1);
cftMap.put("key01", uLstA);
us3 = new User("Buser002");
uLstB.add(us3);
cftMap.put("key02", uLstB);
for (Map.Entry<String, List<User>> mst : cftMap.entrySet()) {
System.out.println("キー:" + mst.getKey());
List<User> resLst = mst.getValue();
for (User res : resLst) {
System.out.println("値: " + res.getMsg());
}
}
}
}
package com.arkgame.study.java.it; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class ListObjDemo { protected static Map<String, List<User>> cftMap = new HashMap<String, List<User>>(); public static void main(String[] args) { List<User> uLstA = new ArrayList<User>(); List<User> uLstB = new ArrayList<User>(); User us1, us3; us1 = new User("Auser001"); uLstA.add(us1); cftMap.put("key01", uLstA); us3 = new User("Buser002"); uLstB.add(us3); cftMap.put("key02", uLstB); for (Map.Entry<String, List<User>> mst : cftMap.entrySet()) { System.out.println("キー:" + mst.getKey()); List<User> resLst = mst.getValue(); for (User res : resLst) { System.out.println("値: " + res.getMsg()); } } } }
3.実行結果
キー:key02
値: Buser002
キー:key01
値: Auser001