24小时在线 - 古典小说 - 文学小说 - 关于我们
您的当前位置:首页 > Java > Java SE >

帮帮小弟我,俺是新人

来源:比特技术 编辑:比特技术网 时间:2018-07-03点击:
导读:帮帮我,俺是新人有没有一个方法产生2个永远不同的随机数,要生成几位的随机数?拼接随机数,我觉得这样相
帮帮我,俺是新人
有没有一个方法产生2个永远不同的随机数

------解决方案--------------------
要生成几位的随机数?拼接随机数,我觉得这样相同的可能性就要小很多
------解决方案--------------------
你把产生的随机数,加上一个永远自加的数,在开方就行了,比如第一个随机数加1,开方,第二个加2,开方。以此类推,如果你开方的数大于1了,你就把整数去掉就行了
------解决方案--------------------
放到Set不行么?
------解决方案--------------------
有办法!!你定义一个数组a[2]={10,11};
然后产生1或者0;打印出下标为1或者0的那个数,接着去掉那个数,数组减少一;
再随机都不会产生跟第一个相同的数了
------解决方案--------------------
虽然RANDOM产生的是伪随机数
不过用个小技巧就可以产生完全不重复的数~~
很简单,取时间戳附加到RANDOM产生的随机数上~~~

假设 有 int a = random.getInt(100);
可以取当前的时间戳
long b = Calendar.getInstanse().getTime().getTime();

然后你把a和b组合一下,随便是相加还是相乘或者怎么样,你产生的随机数永远是不重复的
------解决方案--------------------

楼上楼上...
取时间的话对位数要求太呆板了
------解决方案--------------------
放在set里面不错啊
------解决方案--------------------
tomkai(我不是苹果)
笨啦...
不一定要用LONG值啊
你可以用SimpleDateFormat取字符串值啊

SimpleDateFormat sdf = new SimpleDateFormat( "HHmmssS ");
高兴怎么取就怎么取嘛...
然后你直接拿STRING处理也行,转成INT处理也行,怎么高兴怎么做来源:比特技术在线(www.byte.online),欢迎分享本文,转载请保留出处!
http://www.byte.online/a/Java_SE/2018/90726.html
责任编辑:比特技术网

    打赏

    取消

    感谢您的支持,我会继续努力的!

    扫码支持
    扫码打赏,你说多少就多少

    打开支付宝扫一扫,即可进行扫码打赏哦

    网友评论:

    Copyright © www.byte.online 比特技术在线 版权所有 粤ICP备15038486号-3
    本站所有资料来源于网络,由个人收集整理,仅限于个人学习和研究,如果侵犯您的权益请联系我们删除!
    Top