猿问

Java POJO 集合属性

我有一个类似于下面提到的 POJO。这里我指的Set是POJO1. 我知道 set 不包含重复项。我需要覆盖equals()和hashCode()方法POJO2吗?Set除非我们覆盖 equals 和 hashCode 方法,否则在这里使用 a并没有真正的帮助?请帮助我在这方面多了解一点!


public class POJO1 {


        private String name;

        private Set<POJO2> pj2;


        public Company(){

            pj2 = new HashSet<>();

        }


        //setter and getter methods


    }


收到一只叮咚
浏览 190回答 2
2回答

当年话下

是的,Java 了解哪些对象是重复的唯一方法是调用equals()方法。equals()检查两个对象的引用指向内存中相同位置的默认实现。但是根据您的确切实现,您Set可能需要覆盖hashCode/equals或实现Comparable接口。由于您将对象POJO2放入HashSet您需要验证hashCode等于methods inPOJO2` 类。
随时随地看视频慕课网APP

相关分类

Java
我要回答