測試了一下,用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
2017-04-19
2017-04-13
這個是部分的!可能你們更想看這個
2017-04-13
這個是完整的!
2017-04-13
親把完整代碼貼出來吧,看看。如果用==就可以的話就沒必要重寫equals方法了,this.name是String型的,一般是比較其值是否相等,用equals
2017-04-13
把你的主方法main()里的代碼貼出來看看