链接列表插入之前方法



我正在尝试在我的LinkedList ArrayList中的特定元素之前添加一个字符串。我正在尝试将每个元素从特定索引向右移动以插入新元素。元素不能在数组列表中移动吗?我收到以下错误:

线程"main"中的异常 java.lang.IndexOutOfBounds异常:索引:2,大小:2

这是我的插入方法:

public static void insertBefore() { 
    System.out.println("Which song would you like to add: ");
    element = scanner.next();   
    for(int i=linkedList.size(); i>index; i--){
        linkedList.set(index+1, linkedList.get(index));
    }
    linkedList.add(index, element);
}

这是我尝试更简单方法后的第五次尝试。提前感谢您的回答!

您可以使用

ArrayList 对象在指定位置添加带有add(int index, E element)方法的元素。它会自动移动当前处于该位置的元素。

得到该异常是因为当您只有两个元素时,您正在尝试替换第二个位置的元素。有关详细信息,请参阅文档。

为什么不

if(linkedList.size() > 0)
return  linkedList.get(linkedList.size() - 1);

相关内容

  • 没有找到相关文章

最新更新