public class Nodelmpl implements Node {
private int data;
private Node next;
public Nodelmpl(int data) {
this.data = data;
}
@Override
public int getId() {
// TODO Auto-generated method stub
return data;
}
@Override
public boolean equals(Node n) {
// TODO Auto-generated method stub
return this.data == n.data.id();
}
public Node getNext() {
return next;
}
}
我正在尝试完成这两个方法但是我很混淆如何做equals方法并且不确定我是否正确地执行了id命令并设置了正确的构造函数。
更多解释:
我正在尝试制作NodeImpl.java,这个实现考虑了界面中的功能。然后我完成这两个方法没有其他新方法,所以Node只有两个公共方法 - 一个用于获取 节点,以及覆盖Object等于方法的节点。此方法应检查两个节点是否共享一个id。如果他们这样做,则返回true,否则返回false。没有setId方法。
目标:我需要添加足够的构造函数并完成实现中的方法
答案 0 :(得分:0)
如果设置data
的唯一方法是通过构造函数,你应该创建一个接收int参数的方法
public Nodelmpl(int data) {
this.data = data;
}
还有两条评论:
data
和next
应为private
,并通过getter(或其他方式)访问
方法)
原始类型应按==
进行比较,而不是equals
。 equals
方法
应该看起来像
public boolean equals(Node n) {
return this.data == n.id();
}