Java 从链接列表中删除元素

Java 从链接列表中删除元素,java,linked-list,Java,Linked List,在用户提示下,我需要帮助从链表中删除元素。感谢您的帮助。到目前为止,这就是我所拥有的,但它似乎不起作用 public void removeList(LinkedList someList) { System.out.println(someList); Scanner input = new Scanner(System.in); System.out.println("Enter a String to Delete:"); String s = inpu

在用户提示下,我需要帮助从链表中删除元素。感谢您的帮助。到目前为止,这就是我所拥有的,但它似乎不起作用

public void removeList(LinkedList someList)
{

    System.out.println(someList);
    Scanner input = new Scanner(System.in);

    System.out.println("Enter a String to Delete:");
    String s = input.nextLine();

    for(int i = 0; i < someList.size(); i++)
    {
    if(s.equals(someList))
    {
    someList.remove(s);
    System.out.println(someList.get(i));
    }
}
public void removeList(LinkedList someList)
{
System.out.println(someList);
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入要删除的字符串:”);
字符串s=input.nextLine();
for(int i=0;i
您不需要在此处使用循环。您可以直接调用remove方法

试试下面

public void removeList(LinkedList someList) {

    System.out.println(someList);
    Scanner input = new Scanner(System.in);

    System.out.println("Enter a String to Delete:");
    String s = input.nextLine();

    someList.remove(s);
    System.out.println(someList);
}

下面的代码将避免for循环

public void removeList(LinkedList someList)
{      
    Scanner input = new Scanner(System.in);

    System.out.println("Enter a String to Delete:");
    String s = input.nextLine();

    if (someList.contains(s))
        someList.remove(s);
    System.out.println(someList);     
}    

s、 equals(someList.get(i))可能?如果(s.equals(someList))应该做什么?不要使用
System.out.println(someList.get(i))
在您刚刚删除该条目后。使用
中断;
来停止循环。您真的必须这样滚动您自己的方法吗?无需进行
包含
检查。只有在列表包含该项时才会成功。