从键盘输入的课程提示false

来源:6-1 学生选课---判断 List 中课程是否存在

del孜然

2016-06-30 09:28

public void testListContains() {
        Course course = coursesToSelect.get(0);
        System.out.println("取课程" + course.name);
        System.out.println("备选课程中是否包含课程:" + course.name + ", "
                + coursesToSelect.contains(course));
        System.out.println("请输入课程名称:");
        String name = console.next();
        Course course2 = new Course();
        course2.name = name;
        System.out.println("备选课程中是否包含课程:" + course2.name + ", "
                + coursesToSelect.contains(course2));
    }

写回答 关注

3回答

  • 慕慕夕
    2016-10-14 10:40:01

    你重写的equals方法 有问题 

    //                if (id == null) {
    // if (other.id != null)
    // return false;
    // } else if (!id.equals(other.id))
    // return false;

    这段注释调,或者删除

    我的解决了


  • 慕慕夕
    2016-10-14 10:31:57

    我也遇到这个问了,你解决了吗?下载老师的代码运行就是true

  • 远方的小草
    2016-06-30 14:54:45

    使用contains 需要在课程类中重写equals方法。

    慕慕夕

    已经重写了,老师在 Course course2 = new Course(course.id,course.name); 就已经重写了equals方法 运行时是通过的 但是自己输入的时候就不能通过了

    2016-10-14 10:30:31

    共 1 条回复 >

Java入门第三季

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

409792 学习 · 4340 问题

查看课程

相似问题