测试了一下,用equals和==都能出现相同的结果,老师讲错了么?
public boolean equals(Object obj){
if(this==obj){
System.out.print("你好1");
return true;
}
if(obj==null){
System.out.print("你好2");
return false;
}
if(!(obj instanceof subjects)){
System.out.print("你好3");
return false;
}
subjects subject=(subjects)obj;
if(this.name==null){
if(subject.name==null){
System.out.print("你好4");
return true;}
else return false;
}else{
if(this.name==subject.name){
System.out.print("你好5");
return true;}
else return false;
}运行结果:
subjectsToList得到一个课程数据:1 语文 王老师
subjectsToList得到一个课程数据:2 数学 刘老师
subjectsToList得到一个课程数据:3 政治 陈老师
取得课程:政治
你好1备选课程中是否包含课程:政治,true
新创建课程:政治
你好5备选课程中是否包含课程:政治,true
你好5备选课程中是否包含课程:语文,true