ArrayList嵌套HashMap
案例:ArrayList集合存储HashMap元素并遍历 需求:创建一个ArrayList集合,存储上元素,每一个元素都是HashMap,每一个HashMap的键和值都是String,并遍历
思路: 1、创建ArrayList集合 2、创建HashMap集合,并添加键值对元素 3、把HashMap集合作为元素添加到ArrayList集合 4、遍历ArrayList集合
ArrayList嵌套HashMap的练习
xxxxxxxxxxpackage ch17;
import java.util.ArrayList;import java.util.HashMap;import java.util.Set;
public class a_8_1测试 {
public static void main(String[] args) {
//创建ArrayList集合。因为ArrayList集合里面存储的元素是HashMap集合,且每一个HashMap的键和值都是String,所以注意下一行写法 //注意当使用这种嵌套时,ArrayList集合的元素类型是HashMap<String,String> ArrayList<HashMap<String, String>> array = new ArrayList<HashMap<String, String>>();
//-------------------------------------------------------------------------------------------------------------------
//创建HashMap集合,并添加键值对元素 HashMap<String, String> hm1 = new HashMap<String, String>(); hm1.put("男1", "女1"); hm1.put("男2", "女2"); hm1.put("男3", "女3");
//-------------------------------------------------------------------------------------------------------------------
//创建HashMap集合,并添加键值对元素 HashMap<String, String> hm2 = new HashMap<String, String>(); hm2.put("男11", "女11"); hm2.put("男22", "女22"); hm2.put("男33", "女33");
//-------------------------------------------------------------------------------------------------------------------
//创建HashMap集合,并添加键值对元素 HashMap<String, String> hm3 = new HashMap<String, String>(); hm3.put("男111", "女111"); hm3.put("男222", "女222"); hm3.put("男333", "女333");
//-------------------------------------------------------------------------------------------------------------------
//把HashMap集合作为元素添加到ArrayList集合。即ArrayList集合里面有3个元素,每个元素都是HashMap类型的 array.add(hm1); array.add(hm2); array.add(hm3);
//-------------------------------------------------------------------------------------------------------------------
//遍历ArrayList集合 for (HashMap<String, String> hm : array) { //每个hm其实是HashMap集合,即下面具体的遍历需要按照HashMap的遍历方式 //遍历其中的HashMap集合 Set<String> keySet = hm.keySet(); //遍历HashMap集合里面的每一个元素 for (String key : keySet) { String value = hm.get(key); System.out.println(key + "," + value); }
} }}