您的位置:首页 > 编程语言 > C#

C# .NET Random 生成随机数字和字母

2014-01-06 16:11 288 查看
转帖于:http://www.cnblogs.com/zhanqi/archive/2011/03/25/1996013.html

1:随机数生成器

Random 是 .NET 的伪随机数生成器,要生成各种类型的随机数,必须先得到它的实例对象,然后再生成随机数

2:种子

随机数的生成是从种子值开始。 如果反复使用同一个种子,就会生成相同的数字系列,产生不同序列的一种方法是使种子值与时间相关

3:对象实例

默认情况下,Random 类的无参数构造函数使用系统时钟生成其种子值

参数化构造函数可提供一个 Int32 类型的数字为起始值

4:生成方案

方案1:只实例化一个对象,多次方法调用

方案2:每次方法调用都用一个新的实例(无参)

解决方案:

阻塞当前线程一小段时间

或者:应用一个算法来区分每个调用的种子值。

例如,下面的代码使用右移位运算符为多个可以使用相同时间值初始化的 Random 对象(在
1 和大约 28 个对象之间)生成不同的种子值。

5:通用数字和字母随机生成方案

数组方式:略

字符串方式:不灵活,但比较简便,用于验证码已足够

6:用随机数填充指定字节的数组

7:生成大于等于 0.0 小于 1.0 的双精度浮点数

8:生成随机整数

9:生成随机大写字母

10:生成随机小写字母

11:生成随机大小写字母混合

12:生成随机大小写字母和数字混合

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: