在map中是否存在value值的问题

来源:6-4 学生选课---判断 Map 中是否包含指定的 key 和 value

慕瓜453346

2018-11-01 19:51

 if(students.containsValue(new Student(null,name)))
         System.out.println("在map表中存在:"+students.get(id).name);

为什么调用这个新的学生对象是用的是   student.get(id).name?????

这个新的学生对象的id不是为空吗???  怎么实现的调用????

写回答 关注

1回答

  • 给大佬递茶
    2018-11-02 15:37:01

    它调用的是students.get(id).name(students是map)

    不是 student.get(id).name(这句是错的,student是student对象)

    给大佬递茶 回复慕瓜4533...

    他调用的不是新的学生对象,是已经存在于map里的对象,new Student(null,name)这个对象和students.get(id)得到的对象不是同一个,if判断的是map里是否有叫例如“张三”的学生, 如果有则找到他这个学生,这个学生有id ,巧了他也叫“张三”.new Student(null,name)这个student没有id但有name叫“张三”

    2018-11-03 23:08:31

    共 2 条回复 >

Java入门第三季

Java中你必须懂得常用技能,不容错过的精彩,快来加入吧

409792 学习 · 4340 问题

查看课程

相似问题