欢迎大家访问我的博客http://blog.csdn.net/mikejaps,专注于android ios app 开发
今天讲解下Map List Set 的contans方法 要注意的地方
以List 为例:
<span style="font-size:14px;">if(list.contains(o))
retrun true;
else
return false;</span>
我们通常用contans 方法来判断集合中有没有包含指定的元素,如果元素是String 对象,我们判断的时候是不会出错的,但是如果是一个自定义的对象,当集合中虽然没有包含元素但是返回值依然是true(如上代码,虽然list 可能没有包含 o 对象),要得到正确的返回值 此时我们需要重写 Order 类的equals方法,如下
public boolean equals(Object obj) {
if (this == obj)
return true;
if (obj == null)
return false;
if (getClass() != obj.getClass())
return false;
final Order other = (Order) obj;
if(this.getOrderid()!=other.getOrderid())
return false;
return true;
}