1.HashMap<String,List>的理解
hashMap可以理解成是一对对数据的集合我暂时把List 改成String 方便理解
Map<String, String> map=new HashMap<String,String>(),
map.put(key,value);
key可以理解成房子 value 可以理解成 住户名(这儿假设一个大学宿舍只能住一个人)
map.put(“S301”,“张三”);
那就是说S301 这个房间 只有 张三这么个住户
map.put(“S301”,“张三”);
map.put(“S301”,“李四”);
那只保留map.put(“S301”,“李四”); 因为只能住一个 张三被赶出来了
Productlist.get(key); 就是根据房间号 获取对应的住户名
然后执行 String sss=map.get(“S301”);
以后 sss=“李四”
Map<String, List> map=new HashMap<String,List>()
实际上 key 和value 可以是任何对象 这儿只是拿string 举例 现在改回来Map<String, List> map=new HashMap<String,List>(),
List就是一个数据列表 你现在而已理解成 一个名字的列表List list = new LinkedList();
list.add(“张三”);
list.add(“李四”);
list.add(“王五”);
然后 我们假设S301是个大学宿舍 能住很多人
list就是名字列表map.put(“S301”,list);
那样的话 就能储存S301所有住户的名字了同样 可以保存 所有宿舍楼的信息
map.put(“S302”,list1);
map.put(“S303”,list2);
2.HashMap<String,List>的操作
添加操作
map.put():添加key 和 value
list.add();对于多用户,在list中添加value
map.keySet()方法:获取map中所有的key。
map.get(key):获得key对应的value;
常用功能
1.遍历
map<string,string>遍历
```java
for(String key : map.keySet()){
String value = map.get(key);
System.out.println(key+" "+value);
}
Map<String, List>遍历
Map<String, List<String>> ml = new HashMap<>();
List<String> l = new ArrayList();
List<String> l1 = new ArrayList();
List<String> l2 = new ArrayList();
l.add("1");
l.add("2");
l.add("3");
l1.add("4");
l1.add("5");
l1.add("6");
l2.add("7");
l2.add("8");
l2.add("9");
ml.put("1", l);
ml.put("2", l1);
ml.put("3", l2);
for (String mm : ml.keySet()) {
System.out.println(mm + "------" + ml.get(mm));
Iterator<String> it = ml.get(mm).iterator();
if (it.hasNext()) {
System.out.println(ml.get(mm));
}
for (String mmm : ml.get(mm)) {
System.out.println(mmm);
}
}