我有一个包含4个元素的ArrayList。我需要随机删除一个元素并显示更新后的ArrayList。然而,我的随机数总是指向ArrayList的第二个和第三个元素。据我所知,我的随机数应该按照这样的顺序计数:0 1 2 3。这不足以覆盖我的4个元素吗?为什么它总是指向相同的索引?我已经尝试增加随机数(4)+1,但那会使我超出范围。
Random rand = new Random();
Scanner input = new Scanner(System.in);
int numberOfGuests = 4;
ArrayList<String> guestList = new ArrayList<>(4);
System.out.println("Enter 4 guests:");
for(int i = 1; i <=numberOfGuests; i++){
System.out.printf("guest%d: ", i);
guestList.add(input.nextLine());
}
System.out.println("Guest List: " + guestList);
String remove = guestList.remove(rand.nextInt(4));
System.out.printf("%s can't come%n" , remove);
System.out.println("Guest List: " + guestList);