gpt4 book ai didi

java - 从有序的 ArrayList 中挑选一个随机元素

转载 作者:行者123 更新时间:2023-12-01 13:51:00 25 4
gpt4 key购买 nike

所以这里的想法是,我有一个包含一组单词的 ArrayList,我想对列表进行排序,以便它只包含偶数编号的条目,然后随机挑选一个条目。我给了它一个重击,我设法让它只显示奇怪的条目,如下所示:

 int i = 0;

for (Iterator<Phrase> it = phrases.iterator(); it.hasNext(); i++)
{
Phrase current = it.next();

if (i % 2 == 0)
{
System.out.println(current);
}
}

这会打印 ArrayList 上的每个奇数元素,这很好,但我不知道如何从奇数元素中随机选择一个。这是我尝试放入 if 语句中的内容,但它没有执行我想要的操作,它确实随机打印元素,但当我只想要偶数元素时,它还包括奇数元素

Random r = new Random();
int x = r.nextInt(phrases.size());
System.out.println(phrases.get(x));

如果有任何帮助,我们将不胜感激,谢谢。

最佳答案

but I don't know how to select one at random from the odd numbered ones.

如何确保x 为大小的一半并将其乘以2 以获得偶数索引。请尝试以下操作:

 Random r = new Random();
int x = r.nextInt(phrases.size()/2) + (list.size() & 1) - 1;
// size is divided by 2
// so that x is randomly 0 to (size/2 -1) inclusive
System.out.println(phrases.get(x * 2)); // ensuring the accessing index are even

关于java - 从有序的 ArrayList 中挑选一个随机元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19955666/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com