0
点赞
收藏
分享

微信扫一扫

StringBuilder及Random、Next函数使用


例子:

StringBuilder及Random、Next函数使用_Test



注解: 

创建一个期望每次保存36个字符的StringBuilder.注:36个字符不代表最大的存储空间,代表每次超出36时,变量会再次增加一个36字符的空间;

新建一个随机数rd,然后在for循环中,返回一个大于或等于零而小于10的整数,将之拼接在 newRandom中;

最后返回一个字符串类型的数据;


system.string 和 System.Text.StringBuilder的不同


C# 中Random函数


计算机并不能产生完全随机的数字,它生成的数字被称为伪随机数,它是以相同的概率从一组有限的数字中选取的,所选的数字并不具有完全的随机性,但就实用而言,其随机程度已经足够了。

例子:100至999的随机数 ,不过这样会有重复.

Random ran=new Random(); 
int RandKey=ran.Next(100,999);

给Random一个系统时间做为参数,以此产生随机数,就不会重复:


第一种方法不指定随机种子,系统自动选取当前时前作随机种子:

Random ra=new Random();

第二种方法是指定一个int型的参数作为随机种子:

int iSeed=6;
Random ra=new Random(iSeed);


用到Random.Next()方法产生随机数。

ra.Next();

它返回一个大于或等于零而小于2,147,483,647的数,这并不满足我们的需要


重载函数和其它方法:


public virtual int Next(int);

用法:ra.next(20) //返回一个小于所指定最大值(此处为20)的正随机数。

public virtual int Next(int minValue, int maxValue);

用法:ra.next(1,20) //返回一个指定范围内(此处为1-20之间)的随机数,我们在下面的实例中会用到此函数。



————————————————————————————————————————————————————

补充:

static void Main(string[] args)
        {
            Test();
            TestTwo();
            
            Console.ReadKey();
        }
       static Random r = new Random();
      static  void Test()
        {
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine(r.Next());
            }
        }
     static   void TestTwo()
        {
            for (int i = 0; i < 10; i++)
            {
                Console.WriteLine(new Random().Next());
            }
        }

说明: 第一种会产生随机数,第二种会一样。


因为第二种,在创建Random时,随机数创建用到的时间片段太短,不能产生不同的实例;

C#Random()函数详解


c#random 为什么得到的随机数是一样的

举报

相关推荐

0 条评论