Java 如何从已存在的链表中随机选择和删除元素?

Java 如何从已存在的链表中随机选择和删除元素?,java,linked-list,Java,Linked List,我正在做一个音乐椅游戏。我已经做了一个单循环链表,现在我必须随机选择一个元素并删除它。我该怎么做呢?从程序上讲,这应该相对容易 import java.util.LinkedList; import java.util.List; import java.util.Random; public class Test { public static void main(String... args) { List<Integer> list = ne

我正在做一个音乐椅游戏。我已经做了一个单循环链表,现在我必须随机选择一个元素并删除它。我该怎么做呢?

从程序上讲,这应该相对容易

import java.util.LinkedList;
import java.util.List;
import java.util.Random;


public class Test
{
    public static void main(String... args)
    {
        List<Integer> list = new LinkedList<Integer>();
        Random r = new Random();
        // fill list with random values
        try
        {
            for (int i = 0; i < Integer.parseInt(args[0]); ++i)
            { list.add(r.nextInt()); }
        }
        catch (NumberFormatException e) { e.printStackTrace(); }

        System.out.println(list);

        // delete some random values
        for (int i = 0; i < list.size() / 2; ++i)
        { list.remove(r.nextInt(list.size())); }

        System.out.println(list);   
    }
}

选择一个随机数,根据所选的随机数遍历列表,然后从链接列表中删除该项。链接列表不支持真正的随机访问。您考虑过支持随机访问的ArrayList吗?实际上这是一个assignment@FelixMarcus我试图通过数学选择随机数;但它不起作用