链接列表实现中的位置接口有什么用?

时间:2016-11-21 14:12:08

标签: java list linked-list singly-linked-list

我没有看到界面的使用, 为什么我们不能直接在Node Class中直接实现getElement()方法?

public interface Position <T> {
public T getElement();
}

特此是SNODE类:

public class SNode<T> implements Position<T> {

private T element;
private SNode<T> next;

public SNode(T e, SNode<T> n) {
    element = e;
    next = n;
}

public SNode<T> getNext() {
    return next;
}

public void setNext(SNode<T> next) {
    this.next = next;
}

public void setElement(T element) {
    this.element = element;
}

@Override
public T getElement() {
    return element;
}
}

1 个答案:

答案 0 :(得分:0)

position接口提供了结构中元素位置的一般抽象。头寸在更广泛的列表中充当标记/令牌。与 L 列表中的某些元素 e 关联的位置 p 不会改变,即使 e的索引也是如此 L 中的更改是由于列表中其他位置的插入或删除。如果我们将存储在 p 中的元素 e 替换为另一个元素,则位置 p 也不会改变。职位无效的唯一方法是删除该职位。

使用位置类型定义的原因是,位置可以用作某些方法的参数,并可以从列表的其他方法返回值。