且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

C#中获取随机数有三种方法

更新时间:2022-09-13 20:30:40

直接附上源码:

try
            {
                for (int i = 0; i < 10; i++)
                {
                    Random rd = new Random();  

                    //Random类默认的无参构造函数可以根据当前系统时钟为种子,进行一系列算法得出要求范围内的伪随机数.
                    int sjs = rd.Next(50, 100); 
                    if (listBox1.Items.Contains(sjs)) //去掉重复
                    {
                        i--;
                    }
                    else
                    {
                        listBox1.Items.Add(sjs);
                    }

                    listBox1.Items.Add(Guid.NewGuid().ToString()); //

                   //引用System.Guid

                   //GUID的计算使用到了很多在本机可取到的数字,如硬件的ID码,当前时间等.所计算出的128位整数(16字节)可以接近唯一的输出.

                    RNGCryptoServiceProvider csp = new RNGCryptoServiceProvider();
                    byte[] byteCsp = new byte[10];
                    csp.GetBytes(byteCsp);
                    listBox1.Items.Add(BitConverter.ToString(byteCsp));

                   //引用System.Security.Cryptography.RNGCryptoServiceProvider 

                  //因该类使用更严密的算法.所以即使如下放在循环中,所计算出的随机数也是不同的.

                }
            }
            catch { }



本文转自夜&枫博客园博客,原文链接:http://www.cnblogs.com/newstart/archive/2012/05/17/2506025.html,如需转载请自行联系原作者