Java的contains能查找自定义对象吗

   2024-10-07 6080
核心提示:Java的contains方法是用来判断一个集合中是否包含指定元素的方法,它会调用元素的equals方法来比较元素是否相同。如果你要查找自

Java的contains方法是用来判断一个集合中是否包含指定元素的方法,它会调用元素的equals方法来比较元素是否相同。如果你要查找自定义对象是否包含在集合中,需要在自定义对象中重写equals方法和hashCode方法,以确保contains方法能正确比较自定义对象是否相同。

下面是一个例子,展示如何重写equals和hashCode方法来使自定义对象能够正确用contains方法进行查找:

public class CustomObject {    private int id;    private String name;    // 构造方法、getter和setter等略    @Override    public boolean equals(Object o) {        if (this == o) return true;        if (o == null || getClass() != o.getClass()) return false;                CustomObject other = (CustomObject) o;        return id == other.id &&               Objects.equals(name, other.name);    }    @Override    public int hashCode() {        return Objects.hash(id, name);    }}

在上面的例子中,我们重写了equals方法来比较两个CustomObject对象是否相同,同时也重写了hashCode方法以确保相同的对象具有相同的哈希码。这样就能确保contains方法在查找自定义对象时能够正确比较对象是否相同。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号