前段时间需要写个随机函数,于是就有了下面的这个方法.
1
public string CreateSerialNo()
2
}
2
然后当外部循环调用这个方法的时候,竟然产生了相同的随机字符串
1
for(int i=1;i<=10;i++)
2
}
2
但是偶尔也会产生两组不同的随机字符串,无奈下翻看了msdn帮助文档,
上面说到,循环调用同一Random实例将产生同一随机数(不知道我理解的是否正确)
然而拿来对照我的方法,似乎也不符合我的情况啊,毕竟我是在外部循环调用方法,而并非在方法中
循环调用同一随机种子,怎么会生成一样的随机数呢?并且偶尔的几次会长生两样的呢?百思不得其解
最后因为赶时间,也没去研究它了,想到了一个临时解决得方法
将循环种子做为参数传递进来,具体方法如下:
1
public string CreateSerialNo(Random rnd)
2
}
2
如此,程序方能正常得按我得要求执行,这里希望能哪位大侠路过得时候指定下迷津..感激不尽~~!