gpt4 book ai didi

random - 如何在 Kotlin 中获取随机数?

转载 作者:IT老高 更新时间:2023-10-28 13:25:59 43 4
gpt4 key购买 nike

一个可以返回两个参数之间的随机整数的通用方法,就像 ruby​​ 对 rand(0..n) 所做的那样。

有什么建议吗?

最佳答案

我的建议是 extension IntRange上的功能像这样创建随机数:(0..10).random()

TL;DR Kotlin >= 1.3,所有平台随机一个

从 1.3 开始,Kotlin 自带了自己的多平台随机生成器。在此 KEEP 中有描述.下面描述的扩展名现在是 part of the Kotlin standard library ,只需像这样使用它:

val rnds = (0..10).random() // generated random from 0 to 10 included

Kotlin <1.3

在 1.3 之前,在 JVM 上我们使用 Random 甚至如果我们在 JDK > 1.6 上使用 ThreadLocalRandom

fun IntRange.random() = 
Random().nextInt((endInclusive + 1) - start) + start

这样使用:

// will return an `Int` between 0 and 10 (incl.)
(0..10).random()

如果您只希望函数返回 1, 2, ..., 9(不包括 10),请使用由 until 构造的范围:

(0 until 10).random()

如果您使用 JDK > 1.6,请使用 ThreadLocalRandom.current()而不是 Random().

KotlinJs 和其他变体

对于 kotlinjs 和其他不允许使用 java.util.Random 的用例,请参阅 this alternative .

另外,请参阅 answer对于我的建议的变化。它还包括随机 Chars 的扩展功能。

关于random - 如何在 Kotlin 中获取随机数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45685026/

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