Double LInked List IFORMATION&DATA

问题描述:

我编码一个双链表,每个节点有两个插槽,一个用于信息,另一个用于数据。两个输入都由用户在控制台中选择。信息插槽基本上是一个字符串,同时数据插槽必须是一个整数([信息,数据] < - 节点是这样做的)现在,如果我有多个节点链表,我要检查,如果新的节点我正在输入到该列表包含了相同的信息,相同的数据(它的确定,如果两个节点具有相同的数据或信息相同)Double LInked List IFORMATION&DATA

public void nodiInformazioneguale(String information, int key) { 


    Node n = new Node(information, key, null, null); 


    if (n.getInformazione() == head.getNext().getInformazione()&&n.getData(== head.getNext().getData()) { 

     System.out.println("Insert another information && key"); 

    } 

} 
+0

寻求调试帮助的问题(“为什么这个代码不工作?”)必须包含所需的行为,特定的问题或错误以及在问题本身中重现问题所需的最短代码。没有明确问题陈述的问题对其他读者无益。请参阅:如何创建[mcve]。换句话说:你的问题是什么? – GhostCat

+0

啊,太糟糕了。您使用** equals()**;来比较字符串,整数,...所有对象。不是==。有人请关闭作为dup。 – GhostCat

+0

你想阅读https://stackoverflow.com/questions/513832/how-do-i-compare-strings-in-java – GhostCat

您可以将您的节点对象,因此如果您在Node类中重写equals/hashcode方法(同时使用数据和信息),您可以检查插入一个新节点,因为在Set中不能有重复的对象。

+0

ty这应该工作 – Artyy

+0

但请注意:这可能是作弊的“作弊”。如果你被允许参加其他课程,你可能会问你的导师。你想避免你的输入后来因为这种事情而被拒绝。可能的想法是**你**学习如何编写代码以确保节点是独一无二的! – GhostCat