为链表创建自己的equals方法

时间:2018-10-20 03:12:23

标签: java doubly-linked-list

对于我的Java类,我们需要编写equals方法,比较使用节点的双链表的LinkedSet类的两个实例。到目前为止,我只真正了解了如何比较数组,因此我对这个概念不太熟悉,并且在此分配方面确实很挣扎。

https://gist.github.com/rpcarney4/c50dd44d2728c266b26b621bebb12444 (这是我当前拥有的代码的链接,有问题的方法在第170和185行上)

非常感谢您的帮助!

edit:方法之间也有什么区别?在参数中有Set,然后是LinkedSet。为什么我们需要两种不同的方法?

1 个答案:

答案 0 :(得分:0)

在您的代码中Set是一个接口,而LinkedSet是实现它的类。

现在,由于您已经实现了此类的交集,因此使用两个LinkedSet实例之间的相等性非常容易检查。这是因为您的LinkedSet实例不允许在LinkedSet中添加重复的值。因此,要测试两个LinkedSet之间的相等性,请采用它们的交集,并检查交集的大小是否等于linkedsets的大小。如果满足此条件,则两个LinkedSet都相等。