第一种方法不指定随机种子,系统自动选取当前时间作为随机种子:
代码如下 | 复制代码 |
Random ro = new Random(); |
第二种方法可以指定一个int型参数作为随机种子:
代码如下 | 复制代码 |
int iSeed=10; |
这样可以保证99%不是一样。
时间短重复
2.利用种子生成不重复随机数
(a)生成随机数时:Random ran = new Random((int)DateTime.Now.Ticks);
代码如下 | 复制代码 |
ran .Next(minvale, maxvale); |
可以有效解决重复问题
PS: DateTime.Now.Ticks 为数据数的计时周期数
(b) Random random = new Random( GetRandomSeed( ) );//使用加密服务提供程序 (CSP) 提供的实现来实现加密随机数生成器 (RNG) s
代码如下 | 复制代码 |
tatic int GetRandomSeed( ) { byte[] bytes = new byte[4]; System.Security.Cryptography.RNGCryptoServiceProvider rng = new System.Security.Cryptography.RNGCryptoServiceProvider( ); rng.GetBytes( bytes ); return BitConverter.ToInt32( bytes , 0 ); } 或者 Random sourceGen = new Random(new Guid().GetHashCode());//利用Guid |
3.利用延时运行时间解决重复问题
Thread.Sleep(100);
4.递归,用它来检测生成的随机数是否有重复,如果取出来的数字和已取得的数字有重复就重新随机获取。
代码如下 | 复制代码 |
Random ra=new Random(unchecked((int)DateTime.Now.Ticks)); |
其它一些参考
1: 返回一个共有n位数,其中m位是小数的随机数
代码如下 | 复制代码 |
function randomXiao(n,m){
|
--------------------------------------------------------------------------------
可以用trace(randomXiao(3,2));实验一下。这个函数 简单。Math.pow(n,m)用于返回一个以n为底,m为指数的数。乘方!
# 2: 返回一个n到m之间的随机数
代码如下 | 复制代码 |
function randomNm(n,m){ |
--------------------------------------------------------------------------------
之所以用random(m-n+1)是因为随机数的范围是m-n,加上1使 得m也能在里面。加上n保证随机数以n为下限。
加上判断使函数更完整。另外,如果要返回一个负数随机数,也可以用randomNm(n,0);当 然,我想更一般的是用-random(n);
# 3: 返回一个字母
代码如下 | 复制代码 |
function randomAscii(){ |
--------------------------------------------------------------------------------
#4: 返回一个不区分大小写的随机字母
如果要返回大写,把if条件句去掉就行了。如果要返回小写,可以把条件句改为恒成立,或者 去掉条件,最后一句改为:
return c.toLowerCase(); String.fromCharCode(number)函数返回number代表数字的ASCII码。
toLowerCase()用于将大写字 母转为小写。
# 5: 返回一个n到m之间的k个互异随机数
代码如下 | 复制代码 |
|
敢达决战官方正版 安卓版v6.7.9
下载敢达决战 安卓版v6.7.9
下载像素火影骨架佐助 (Perseverance Fire Shadow)手机版v1.16
下载要塞英雄 安卓版v33.20.0-39082670-Android
下载梦想城镇vivo最新版本 安卓版v12.0.1
梦想城镇vivo版是这款卡通风模拟经营类手游的渠道服版本,玩
怦然心动的瞬间 安卓版v1.0
怦然心动的瞬间是一款真人向的恋爱互动游戏,在游戏中玩家将扮演
曼尼汉堡店游戏 安卓版v1.0.3
曼尼汉堡店是一款非常好玩的精品恐怖类型冒险游戏,在这款游戏中
现代总统模拟器去广告版 安卓版v1.0.46
现代总统模拟器是一款休闲养成类游戏,可能对于不少的玩家来说都
现代总统模拟器付费完整版 安卓版v1.0.46
现代总统模拟器高级版在商店是需要付费的,相对于普通版本,高级