不懂为什么要这样写

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

Oldmumu

2017-07-07 17:26

6:32的地方 用containsValue方法,来判断是否包含某个Value值。

if(students.containsValue(new Student(null,name)){

}

后面的括号中object类型为啥写成这样,为啥不能直接写name

写回答 关注

4回答

  • NONO654
    2018-05-22 18:16:01

    student是一个map集合,他在定义的时候value值是Student对象所以比较的时候新建了一个对象

  • M__
    2017-10-12 21:14:24

    除了这一步,后面重写了equals方法的这一步你也要考虑进去,这两步共同实现了“输入一个学生名字查找集合中与这一名字相对应的对象”这一功能

  • define_ray
    2017-08-27 17:31:21

    http://img.mukewang.com/59a290860001a94d07840254.jpg

    如图,因为map的value值是Student类型,id值是String类型。

    所以id可以直接传入Key(类型相同),name不能作为Value(类型不同,name是String)。

  • sleepiness
    2017-07-08 04:23:00

    java 入门第三季 4-3 2:36  student的含参构造函数是student(string id,string name),所以new student的时候 需要提供两个参数(string id , string name),即对应的(null,name)

    慕UI723... 回复Oldmum...

    KEY是map<key,value>前面那个key,value指的学生类Student<id,name>,key和id是两回事

    2017-08-23 14:07:10

    共 5 条回复 >

Java入门第三季

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

409792 学习 · 4340 问题

查看课程

相似问题