我并未用if(this.name.equals(course.name)),而是使用if(this.name==course.name),运行结果一样,课堂中要我们思考的,为何不用==,而用equals,本人未思考出来,求解答什么时候用==,什么时候用equals
package com.zhou.jihe;
public class Course {
public String id;
public String name;
public Course(String id,String name)
{
this.id=id;
this.name=name;
}
public Course(){}
public boolean equals(Object obj)
{
if(this==obj)
{
return true;
}
if(obj==null)
{
return false;
}
if(!(obj instanceof Course))
{
return false;
}
Course cr=(Course)obj;
if(this.name==null)
{if(cr.name==null)
{
return true;
}
else
{
return false;
}
}
if(this.name==cr.name)
{
return true;
}
else{
return false;
}
}
}