概述
正文
对于自定义的实体类来说,直接使用list.contains()方法是不对,因为没有重写实体类的equals方法,所以在contains()遍历元素并比较的时候,实际上比较的是内存地址。
所以要重写equals方法,例如对于Student学生类,可以重写equals方法来比较学号。
// 重写equals方法
@Override
public boolean equals(Object obj) {
if (obj == this) return true;
if (!(obj instanceof Student))
return false;
Student stu = (Student) obj;
return xh.equalsIgnoreCase(stu.xh);
}
注意
注意,当元素数量特别大的时候,使用list.contains效率很低速度很慢,这时候建议使用hashmap或者hashset来containsKey来判断是否包含。
参考:
判断List<实体bean>中是否含有某个实体bean_Aiden@9的博客
判断一个Java实体类是否存在于某个List中_就卤蛋吧的博客
最后
以上就是成就路灯为你收集整理的java判断list包含某个实体类的全部内容,希望文章能够帮你解决java判断list包含某个实体类所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复