创建Student类
package com.sean.base.mapStudy;
/**
*
* @create 2021-02-26 9:01
*/
public class Student {
private String name;
private int stuNo;
public Student(String name, int stuNo) {
this.name = name;
this.stuNo = stuNo;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getStuNo() {
return stuNo;
}
public void setStuNo(int stuNo) {
this.stuNo = stuNo;
}
@Override
public String toString() {
return "Student{" +
"name='" + name + '\'' +
", stuNo=" + stuNo +
'}';
}
}
package com.sean.base.mapStudy;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
/**
* HashMap集合的使用
* 存储结构:哈希表(数组+链表+红黑树)
* 使用key和hashcod和equals作为重复
* @create 2021-02-26 9:00
*/
public class Demo02 {
public static void main(String[] args) {
//创建集合
HashMap<Student, String> students = new HashMap<Student, String>();
//添加元素
Student s1 = new Student("孙悟空",100);
Student s2 = new Student("猪八戒",101);
Student s3 = new Student("白龙马",102);
students.put(s1,"北京");
students.put(s2,"上海");
students.put(s3,"杭州");
System.out.println("元素个数:"+students.size());
System.out.println(students.toString());
//2删除操作
/*students.remove(s1);
System.out.println("删除之后:"+students.size());*/
//3遍历
//3.1使用keySet
System.out.println("-------使用keySet-------");
for (Student key:students.keySet()
) {
System.out.println(key.toString()+"----------"+students.get(key));
}
//3.2使用entrySet
System.out.println("-------3.2使用entrySet-------");
for (Map.Entry<Student,String> entry:students.entrySet()
) {
System.out.println(entry.getKey()+"-------"+entry.getValue());
}
//4判断
System.out.println(students.containsKey(s1));
System.out.println(students.containsValue("杭州"));
}
}