为什么但this.name==null时,如果cource.name==null就返回true?
我认为是因为null无法使用equals判断,并且是比对双方都为null的特殊情况,所以如果obj和this当前对象的name为null,那么直接判定contains的结果为turn。因为比对结果中如果两个集合都把name赋值为null,是需要turn作为结果的。
Java的API文档指出:set 中是可以包含 null值的(常见的集合类都可以包含null值). 所以如果添加了null,然后判断包含null,将会返回true。