java - 随机与随机播放

标签 java random arraylist

我有一个ArrayList,我想从中获取一个随机值。为此,我想到了两种简单的方法:

方法 1:使用 Random 生成一个介于 0 和 ArrayList 大小之间的随机数,然后将该数字用于 arrayList.get(x)

方法 2:使用 arrayList.shuffle() 然后使用 arrayList.get(0)

就随机性而言,一种方法是否优于另一种方法,我知道一种方法不可能真正随机,但我希望结果尽可能随机。

编辑:我只需要那个 ArrayList

中的一个值

最佳答案

这取决于上下文。

洗牌的好处:

  • 一次洗牌,然后顺序抓取
  • 没有重复值

随机化的好处:

  • 适用于少量值
  • 可以重复值

关于java - 随机与随机播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21714533/

相关文章:

.net - 安全地生成均匀随机的 BigInteger

java - 对从 csv 文件导入的数组列表进行小计

java - 使用正则表达式验证输入至少包含 2 个字母,允许特殊字符和普通字符

java - 在预编译项目上使用 Maven 运行测试

java - 生成特定长度范围内唯一的字符串

java - 在Junit测试中,如何使用assertEquals()比较两个ArrayList<Double>,是否有更好的替代方案?

java - 从 arrayList() 中删除属性

java - 线程 "main"org.apache.hadoop.ipc.RemoteException : Server IPC version 9 cannot communicate with client version 4. 中出现异常 如何解决此问题?

java - List<String> 类型中的方法 get(int) 不适用于 Java 8 中的参数字符串

c - 如何使生成的数字不在c中重复?