0

我正在制作一个链表类并尝试实现此contains()方法。

我有headtail哨兵节点,所以我的循环从head.next. length是列表的大小。关于我能给你们的一切:O

public boolean contains(T entry) {

    boolean found = false;
    Node current = head.next;

    for (int i = 0; i < length; i++) {

        if (current.equals(entry)) {

            found = true;
        }
        current = current.next;
    }
    return found;
}
4

1 回答 1

6

问题是您将 aNode与 a进行比较T,如果您的 equals 方法正确履行了正确的合同,则将始终返回 false 作为不同的类。

即重新检查这一行:

if (current.equals(entry)) {
于 2011-11-21T06:04:44.547 回答