如何在Crystal中生成随机数?

4
在Crystal中,我该如何生成一个随机数?
使用Python,我可以简单地执行以下操作来生成0到10之间的随机整数:
from random import randint
nb = randint(0, 10)
2个回答

5
解决方案1-使用随机数模块 随机整数
Random.new.rand(10)      # >= 0 and < 10
Random.new.rand(10..20)  # >= 10 and < 20

随机 浮点数

Random.new.rand(1.5)          # >= 0 and < 1.5
Random.new.rand(6.2..18.289)  # >= 6.2 and < 18.289

解决方案2 - 使用顶层方法rand

正如评论中@Jonne所指出的,您可以直接使用调用Random模块的顶层方法rand:

随机整数

rand(10)      # >= 0 and < 10
rand(10..20)  # >= 10 and < 20

随机 浮点数

rand(1.5)          # >= 0 and < 1.5
rand(6.2..18.289)  # >= 6.2 and < 18.289

1
有一个顶级便捷方法:https://crystal-lang.org/api/0.25.1/toplevel.html#rand%28x%29-class-method - Jonne Haß

4
还要更短的话,可以使用rand函数:
# ints
rand(10)
rand(10..20)

# floats
rand(1.5)
rand(6.2..18.289)

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接