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="李四" 实际上 key 和value 可以是任何对象 这儿只是拿string 举例 现在改回来Map<String, List> map=new HashMap<String,List>(), List就是一个数据列表 你现在而已理解成 一个名字的列表List<String> list = new LinkedList<String>(); list.add("张三"); list.add("李四"); list.add("王五"); 然后 我们假设S301是个大学宿舍 能住很多人 list就是名字列表map.put("S301",list); 那样的话 就能储存S301所有住户的名字了同样 可以保存 所有宿舍楼的信息 map.put("S302",list1); map.put("S303",list2);