自制随机数

我昨天发现了一个好玩的东西,今天打算记录下来
我们在写随机数的时候,一般会用到Random

 /// <summary>
 /// 产生重复的随机数
 /// </summary>
 public static void Print1()
 {
     for (int i = 0; i < 10; i++) 
     {
         Random rd = new Random();
         var rds = rd.Next(1, 10);
         Console.WriteLine(rds);
     }
 }

但是,你转念一想,当这个10个数字并行的时候,是不是就相当于随机数
所以我有了以下代码

 public static void Print2() 
 {
     Parallel.For(0, 10, delegate (int i)
     {
         Console.WriteLine(i);                //打印0-10的无序整数
     });
 }

Parallel结合Enumerable更好玩

  public static void Print3()
  {
      //Enumerable结合Parallel
      var lists = Enumerable.Range(1, 10).ToList();
      Parallel.For(0, lists.Count, i =>
      {
          Console.WriteLine($"索引{i},{lists[i]}");
      });
  }
posted @ 2023-08-23 11:20  孤沉  阅读(15)  评论(0编辑  收藏  举报