zoukankan      html  css  js  c++  java
  • C#中获取随机数有三种方法

    直接附上源码:

    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 { }

    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    七. 多线程编程3.主线程
    七. 多线程编程1.线程的概念
    六. 异常处理12.断言
    liunx 安装 mysql 5.6
    idea Unable to open debugger port (127.0.0.1:58006) Address already in use: JVM_Bind 的解决办法
    liunx 安装redis 4.0
    liunx 安装jdk1.8
    idea 去除xml文件sql语句背景色
    改变数据库和表编码
    mybatis 按in 函数参数顺序排序
  • 原文地址:https://www.cnblogs.com/newstart/p/2506025.html
Copyright © 2011-2022 走看看