Map由于是键值对的缘由,因此有分别查询键与值。的不一样方法java
分别是containsKey与containsValuecode
student类有Id和name属性,id为K值,name为V值对象
如下是一部分的代码,仅作示例,复制黏贴没法运行。get
public void testContainsKeyOrValue() { // 提示输入学生id System.out.println("请输入要查询的学生ID:"); Scanner console = new Scanner(System.in); String id = console.next(); // 在Map中,用containsKey()方法,来判断是否包含某个Key值 System.out.println("您输入的学生ID为:" + id + ",在学生映射表中是否存在:" + students.containsKey(id)); if (students.containsKey(id))//k值为类型为String,故传进去返回true,并执行下一句 //使用get获取对应的V值,V值为学生对象类型 System.out.println("对应的学生为:" + students.get(id).name); // 提示输入学生姓名 System.out.println("请输入要查询的学生姓名:"); String name = console.next(); // 用containsValue()方法,来判断是否包含某个Value值 if (students.containsValue(new Student(null,name)))//由于V值是学生类型,因此只能传学生类进去 System.out.println("在学生映射表中,确实包含学生:" + name); else System.out.println("在学生映射表中不存在该学生!"); }