键找值:键相同,值覆盖;
//Map 集合的遍历
HashMap<String, String> map = new HashMap<>();
String s = map.put("S001", "PGONE"); //第一次存储返回值是null
String s1 = map.put("S001", "LULU"); //再次存储相同的键,新的值,会覆盖旧值,返回旧值
map.put("陈羽凡", "白百合");
map.put("陈思成", "佟丽娅");
map.put("武大", "金莲");
//获取所有得键得集合
Set<String> keySet = map.keySet();
for (String key : keySet) {
//键找值
String value = map.get(key);
System.out.println(key+"===="+value);
}
键值对
HashMap<String, String> map = new HashMap<>();
String s = map.put("文章", "马伊琍"); //第一次存储返回值是null
String s1 = map.put("文章", "姚笛"); //再次存储相同的键,新的值,会覆盖旧值,返回旧值
map.put("陈羽凡", "白百合");
map.put("陈思成", "佟丽娅");
map.put("武大", "金莲");
//获取键值对对象Entry,把键值统一看作一个整体
Set<Map.Entry<String, String>> entries = map.entrySet();
// Entry 键值对
//getKey ():返回与此项对应的键。
//getValue():返回与此项对应的值。
for (Map.Entry<String, String> entry : entries) {
String key = entry.getKey();
String value = entry.getValue();
System.out.println(key+"====="+value);
}
HashMap<Student, String> map = new HashMap<>();
Student s1 = new Student("张三", 28);
map.put(s1, "s001");//传入键值,此集合不能自动排序
map.put(new Student("李四", 24), "s002");
map.put(new Student("王五", 25), "s003");
map.put(new Student("赵六", 26), "s004");
map.put(new Student("张三", 23), "s005");
//遍历方式1:键找值
Set<Student> students = map.keySet();
for (Student key : students) {
String value = map.get(key);
System.out.println(key.getName()+"=="+key.getAge()+"========="+value);
}
System.out.println("========================");
//遍历方式1:键值对
Set<Map.Entry<Student, String>> entries = map.entrySet();
for (Map.Entry<Student, String> entry : entries) {
Student key = entry.getKey();
String value = entry.getValue();
System.out.println(key.getName() + "==" + key.getAge() + "=========" + value);
}
Collection<String> values = map.values();//获得hashmap集合的值
System.out.println(values);//打印值