gpt4 book ai didi

java - 为什么 (int) Math.random()*10 在 Java 中不产生 10?

转载 作者:行者123 更新时间:2023-12-02 01:52:55 25 4
gpt4 key购买 nike

为什么下面的结果是 0 - 9 而不是 10?

我的理解是 Math.random() 创建 0 到 1.0 以下的数字。

所以它可以产生 0.99987,通过 *10 变成 10,不是吗?

int targetNumber = (int) (Math.random()* 10);

最佳答案

在 Java 中将 double 转换为 int 会进行整数截断。这意味着,如果您的随机数是 0.99987,则乘以 10 得到 9.9987,整数截断得到 9。

关于java - 为什么 (int) Math.random()*10 在 Java 中不产生 10?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3091998/

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