我创建了一个关于LinkedList的程序,这里是代码:
package consoleapplication;
import java.util.Scanner;
import java.util.LinkedList;
public class Index {
static int s, n ,e;
public static void main(String[] args) {
// LinkedList
LinkedList k = new LinkedList();
// input
Scanner a = new Scanner(System.in);
System.out.println("Size: ");
s = a.nextInt();
System.out.println("Element: ");
e = a.nextInt();
// process
for (n = 0; n < s; n++) {
k.add(n);
}
// output
System.out.println("Index of " + e + k);
}
}
这是输出:
Size: 12
Element: 12
Index of 12[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
程序正在运行。但我想删除一个元素。例如,我想删除索引为12的0或任何数字。我该怎么做?
答案 0 :(得分:1)
k.remove(indexYouWantToRemove);
有关详细信息,请查看此处:http://docs.oracle.com/javase/7/docs/api/java/util/LinkedList.html#remove%28int%29
答案 1 :(得分:0)
在用Java实现或询问任何内容之前,请检查它是否已经实现。 这些方法可以帮助您:
public boolean remove(Object o)
从此列表中删除指定元素的第一个匹配项(如果存在)。如果此列表不包含该元素,则不会更改。更正式地,删除具有最低索引i的元素,使得(o==null ? get(i)==null : o.equals(get(i)))
(如果存在这样的元素)。如果此列表包含指定的元素,则返回true(或等效地,如果此列表因调用而更改)。
public E remove(int index)
删除此列表中指定位置的元素。将任何后续元素向左移位(从索引中减去一个)。返回从列表中删除的元素。
答案 2 :(得分:0)
你应该使用下一个方法
k.remove();
k.remove(Index);
k.removeFirst();
k.removeLast();
以下是有关其用法的简短示例:
import java.util.Arrays;
import java.util.LinkedList;
public class Index {
public static void main(String[] args) {
// LinkedList
LinkedList<Integer> k = new LinkedList<Integer>() {
{
addAll(Arrays.asList(new Integer[]{1, 2, 3, 4, 5, 6, 7}));
}
};
System.out.println("Initial List: " + k);
k.remove(); //Retrieves and removes the head (first element) of this list.
System.out.println("List after k.remove(): " + k);
k.remove(2); //Removes the element at the specified position in this list.
System.out.println("List after k.remove(2): " + k);
k.removeFirst();//Removes and returns the first element from this list.
System.out.println("List after k.removeFirst():" + k);
k.removeLast();//Removes and returns the last element from this list.
System.out.println("List after k.removeLast(): " + k);
}
}
输出:
Initial List: [1, 2, 3, 4, 5, 6, 7]
List after k.remove(): [2, 3, 4, 5, 6, 7]
List after k.remove(2): [2, 3, 5, 6, 7]
List after k.removeFirst():[3, 5, 6, 7]
List after k.removeLast(): [3, 5, 6]
答案 3 :(得分:-1)
答案参考 http://www.tutorialspoint.com/java/util/linkedlist_remove_object.htm
描述 java.util.LinkedList.remove(Object o)方法从该列表中删除指定元素的第一个匹配项(如果存在)。如果此列表不包含该元素,则不会更改。
宣言 以下是java.util.LinkedList.remove()方法
的声明public boolean remove(Object o) 参数 o - 要从此列表中删除的元素(如果存在)
返回值 如果此列表包含指定的元素
,则此方法返回true异常 NA
实施例 以下示例显示了java.util.LinkedList.remove()方法的用法。
package com.tutorialspoint;
import java.util。*;
公共类LinkedListDemo {
public static void main(String [] args){
// create a LinkedList
LinkedList list = new LinkedList();
// add some elements
list.add("Hello");
list.add(2);
list.add("Chocolate");
list.add("10");
// print the list
System.out.println("LinkedList:" + list);
// remove "10"
System.out.println("10 is in the list:" + list.remove("10"));
// print the list
System.out.println("LinkedList:" + list);
} }