public void delete(int index)
{
if (index < 0 || index > _____)
{
throw new ArrayIndexOutOfBoundsException();
}
{
Node<X> current = head;
for (int i = 0; i < index; i++)
{
current = current.getLink();
}
Node<X> newNode = new Node<X>();
newNode.setLink(current.getLink());
current.setLink(newNode);
}
}
所以我似乎无法弄清楚在使用节点对象时编写索引outofbounds异常的逻辑。这不像我可以做head.length,所以我会首先使用.getLink循环来找到Null?这不像我可以做index!= null。ArrayOutOfBounds异常
检查'getLink'是否在循环内部返回null,如果它发生异常则抛出异常? – andars
为什么在删除时创建一个newNode?它看起来更像是一个插入操作。 – anonymous
newnode成为我删除后的链接,然后把它放回头部链接 –