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吗?它不像我可以做索引!= null。
答案 0 :(得分:2)
if (index < 0 || index >= sizeOfList)
{
throw new ArrayIndexOutOfBoundsException();
}
如果你有一个计算集合长度的函数。
答案 1 :(得分:1)
在编写代码时,您需要检查边缘情况。 这是最好的做法。
因为你错过了大小为0且列表已满的边缘情况,在上面提到的例子中,你得到的是ArrayIndexOutOfBoundsException。