加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – 范围中的随机数

发布时间:2020-12-15 04:59:00 所属栏目:Java 来源:网络整理
导读:我有一个我正在为iOS和 Android写的应用程序.在启动时,我试图获得1到6之间的随机数. iOS(Objective-C): int random = rand() % (6 - 1) + 1; Android(Java): Random random = new Random();int num = random.nextInt(6)+1; 在这两种情况下,他们每次都返回3
我有一个我正在为iOS和 Android写的应用程序.在启动时,我试图获得1到6之间的随机数.

iOS(Objective-C):

int random = rand() % (6 - 1) + 1;

Android(Java):

Random random = new Random();
int num = random.nextInt(6)+1;

在这两种情况下,他们每次都返回3.

从我读过的其他问题来看,人们遇到了同样的问题,因为他们正在循环使用random并继续重新实现Random对象.但我只想要一个随机数,所以我只想实例化一次.

那么,我怎样才能获得这些代码中的任何一个来获得1-6而不是3?

解决方法

对于Objective-C部分,我可以告诉你,你必须播种随机种子,如下所示:

srand(time(0)); // seed it using the current time

对于Java部分,新的Random()构造函数会自动在桌面应用程序的默认JVM中播种它,but not on Android.在Android上,它使用默认的种子值.

Random rand = new Random(System.nanoTime());

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读