list remove(Object o) 坑之一

如果这个o对象不是 null,那么会通过equals来比较。默认情况下equals比较的是地址。

换言之-如果传进来的o对象的属性内容一模一样,但是地址不一样。这样就会删除不掉。

-----------------------------------------------------------------------------------------------------

情况1--内容 地址一样,这是能够删除的

 

 

情况1--内容一样   地址不一样,这是不能够删除的

 

---------------------------------------------------------

 

所以 我们需要在remove  equals的时候去比较内容,而不是地址。

需要重写equals

posted @ 2019-11-08 17:33  妖君你好  阅读(134)  评论(0编辑  收藏  举报