我正在處理我的OOP類的鏈接列表賦值,並且遇到了一些使用remove方法的問題。我們的教授要求我們寫一個方法:鏈接列表 - 刪除索引處的元素
public Object removeElement(int index)
這需要一個索引,它是需要移除的元素的位置。它必須返回包含的已刪除節點的數據。但是,我在獲取方法返回正在移除的對象時遇到了問題。出於某種原因,我不斷收到錯誤,該方法必須返回類型對象的結果。我讓它返回一個對象,並且我在各個地方經歷了嘗試和失敗,但都沒有成功。 這裏是我的代碼:
public Object removeElement(int index)
{
ListIterator iterator = listIterator();
Object object;
//If the supplied index is less than zero, throw an exception.
if(index < 0)
{
IndexOutOfBoundsException ex = new IndexOutOfBoundsException();
throw ex;
}
else
{
for(int i = 0; i <= index; i++)
{
if(!iterator.hasNext())
{
IndexOutOfBoundsException ex = new IndexOutOfBoundsException();
throw ex;
}
else
{
if(i == index)
{
object = iterator.next();
iterator.remove();
return object;
}
else
{
iterator.next();
}
}
}
}
}
是否錯誤給行號?什麼是完整的錯誤信息? – iamnotmaynard 2013-04-11 20:46:00
錯誤不在編譯,它是在我編譯之前的方法。 – Legare 2013-04-11 20:49:36
@DanielPikul:有效*是*編譯錯誤。這只是你的IDE基本上在你輸入時進行編譯。 – 2013-04-11 20:50:27