「Java」拡張forループでMapのデータを取得するサンプル

書式
for (Map.Entry<String, List<クラス名>> mst : cftMap.entrySet()) {
使用例
1.Userクラスの定義

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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クラス

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
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

Java

Posted by arkgame