zoukankan      html  css  js  c++  java
  • C#随机数

       C#中有个Random类可以非常方便的产生一个随机数,但是在使用中你会发现这个类并不是特别好用,偶尔会一直提供同一个数,这里我将介绍另一个获取随机数的方法。

      GUID,全局唯一标识符。是一种由算法生成的唯一标识,通常表示成32个十六进制数字(0-9,A-F)组成的字符串,如:{21EC2020-3AEA-1069-A2DD-08002B30309D},它实质上是一个128位长的二进制整数。GUID的主要目的是产生完全唯一的数字。在理想情况下,任何计算机和计算机集群都不会生成两个相同的GUID。GUID的总数也足够大,达到了2128(3.4×1038)个,所以随机生成两个相同GUID的可能性是非常小的,但并不为0。所以,用于生成GUID的算法通常都加入了非随机的参数(如时间),以保证这种重复的情况不会发生。(以上介绍来自维基百科)

      实现方法很简单

    string ra = Guid.NewGuid().ToString();//生成一个GUID
    string[] sArray = ra.Split('-');//将GUID已‘-’分割成数组
    int raNum = Convert.ToInt32(sArray[1].ToString(), 16) % 3960;//调用数组内的数据转成int类型

      sArray的下标取值范围0-6,由于我需要一个0-3960的随机数,所以我对3960取余。

      

  • 相关阅读:
    8月6日总结
    8月4日总结
    8月3日总结
    快速幂计算题解
    7月31日总结
    7月30日总结
    关于PHP中”::”能够调用一个非静态的方法的解释
    码云 使用 svn 管理项目
    Mysql的数据类型
    thinkphp5的$this->fetch()
  • 原文地址:https://www.cnblogs.com/LandMine/p/4481372.html
Copyright © 2011-2022 走看看