首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >生成6位随机数

生成6位随机数
EN

Stack Overflow用户
提问于 2018-07-13 10:10:06
回答 5查看 84.4K关注 0票数 16

我只想生成6位数字的随机数,范围应该从000000开始到999999。

new Random().nextInt(999999)正在返回我的号码,但它不是6位数。

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2018-07-13 11:28:04

就这么简单,您可以使用您的代码,只需在这里多做一件事。

代码语言:javascript
复制
String.format("%06d", number);

这将返回字符串格式的数字,因此"0“将是"000000”。

这是密码。

代码语言:javascript
复制
public static String getRandomNumberString() {
    // It will generate 6 digit random Number.
    // from 0 to 999999
    Random rnd = new Random();
    int number = rnd.nextInt(999999);

    // this will convert any number sequence into 6 character.
    return String.format("%06d", number);
}
票数 52
EN

Stack Overflow用户

发布于 2018-07-13 10:12:55

如果你需要一个六位数的数字,它必须从100000开始

代码语言:javascript
复制
int i = new Random().nextInt(900000) + 100000;

前导零没有影响,0000000是一样的。如果您使用的是Java ThreadLocalRandom,您可以使用7+进一步简化它:

代码语言:javascript
复制
int i = ThreadLocalRandom.current().nextInt(100000, 1000000)
票数 12
EN

Stack Overflow用户

发布于 2018-07-13 10:18:53

1+ nextInt( 2 )总是给出1或2,然后你把它乘以10000来满足你的要求,然后在0..9999之间加一个数字。

已经解决的here

代码语言:javascript
复制
public int gen() 
{ 
    Random r = new Random( System.currentTimeMillis() );
    return ((1 + r.nextInt(2)) * 10000 + r.nextInt(10000)); 
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51322750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档