一、List嵌套List
List集合中的元素是List
// 创建一个List集合,限制元素类型为String
List<String> list1 = new ArrayList<>();
// 往集合中添加元素
list1.add("老大");
list1.add("老二");
list1.add("老三");
List<String> list4 = new ArrayList<>();
// 往集合中添加元素
list4.add("张三");
list4.add("李四");
list4.add("赵五");
// 创建一个List集合,限制元素类型为Integer类型
List<Integer> list2 = new ArrayList<>();
// 往集合中添加元素
list2.add(100);
list2.add(300);
list2.add(200);
List<Number> list5 = new ArrayList<>();
// 往集合中添加元素
list5.add(100);
list5.add(300);
list5.add(200);
// 创建一个List集合,限制元素类型为List<Integer>类型
List<List<String>> list3 = new ArrayList<>();
list3.add(list4);
list3.add(list1);
// 创建一个List集合,限制元素类型为List<Integer>类型
List<List<? extends Number>> list6 = new ArrayList<>();
list6.add(list2);
list6.add(list5);
二、List嵌套Map
List集合中的元素是Map
// 创建Map集合,
Map<String,String> map1 = new HashMap<>();
map1.put("1001","老大");
map1.put("1002","老二");
Map<String,String> map2 = new HashMap<>();
map2.put("1003","张三");
map2.put("1004","李四");
// 创建List集合,限制集合中的元素为Map
List<Map<String,String>> list = new ArrayList<>();
// 往集合中添加元素
list.add(map1);
list.add(map2);
System.out.println(list);
// 循环遍历
for (Map<String, String> map : list) {
// 方式一:
/*Set<String> keys = map.keySet();
for (String key : keys) {
System.out.println(key+" : "+map.get(key));
}*/
// 方式二:
Set<Map.Entry<String, String>> entries = map.entrySet();
for (Map.Entry<String, String> entry : entries) {
System.out.println(entry.getKey()+" : "+entry.getValue());
}
}
三、Map嵌套Map
Map集合中的元素是Map
Map<String,String> map1 = new HashMap<>();
map1.put("1001","老大");
map1.put("1002","老二");
Map<String,String> map2 = new HashMap<>();
map2.put("1003","张三");
map2.put("1004","李四");
Map<String,Map<String,String>> map = new HashMap<>();
map.put("一班",map1);
map.put("二班",map2);
// keys map集合的所有keys
Set<String> keys = map.keySet();
for (String key : keys) {
Map<String, String> mapValue = map.get(key);
Set<String> mapValue_keys = mapValue.keySet();
for (String mapValue_key : mapValue_keys) {
System.out.println(key +" ["+ mapValue_key +":"+ mapValue.get(mapValue_key) +"]");
}
}