帮帮我,俺是新人
有没有一个方法产生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处理也行,怎么高兴怎么做