coursesToSelect.contains(course2)
對第一次比較有疑問。
contains方法相當于遍歷List進行equals比較,如果是String類型,比較的是內容而不是地址,為什么這里Course類型的equals比較的內容相同,contains返回值為false呢?
對第一次比較有疑問。
contains方法相當于遍歷List進行equals比較,如果是String類型,比較的是內容而不是地址,為什么這里Course類型的equals比較的內容相同,contains返回值為false呢?
2019-01-28
舉報
2019-01-28
對于equals方法,注意:equals方法不能作用于基本數(shù)據(jù)類型的變量
如果沒有對equals方法進行重寫,則比較的是引用類型的變量所指向的對象的地址;
諸如String、Date等類對equals方法進行了重寫的話,比較的是所指向的對象的內容。
而contains中的元素比較的應該是obj類型的,系統(tǒng)并沒有重寫equals方法,比較的是地址值