问答详情
源自:6-1 学生选课---判断 List 中课程是否存在

为什么重写equals前第二个对象会出现false?

老师,既然contains的原理是调用equals方法遍历比较,那为什么重写equals前,新建的Course对象course2会找不到?不是值是一样的吗,只是地址不同吗?

提问者:夏木沐 2015-07-21 16:17

个回答

  • 管理員
    2015-07-21 19:13:23

    没看你的课程

    看样子应该是一个List,里面包含Course对象


    关于:不是值是一样的吗,只是地址不同吗?

    这你还真说对了,对象类型是比较equals的返回值,如果没有重写就用Object继承的默认equals,比地址。


    你可以试试:

    Course course=list.get(0);

    list.contains(course);// true