C#在循環中使用Random時生成的隨機數相同的解決辦法

場景

在循環中使用dom

Random y = new Random();

 

生成隨機數時每次循環生成的數是同樣的。ui

for (int i = 1; i < 20000;i++ )
            {
                Random y = new Random();
                PointPairList list1 = new PointPairList();

                for (int j = 0; j < 50; j++)
                {
                    double x = j;
                    double y1 = y.NextDouble() * 1000;
                    list1.Add(x, y1); //添加一組數據

                }

                LineItem myCurve = myPane.AddCurve("曲線"+i, list1, Color.Red, SymbolType.None);
               
            }

 

想要每次循環生成不同的隨機數。spa

實現

能夠查看Random的定義code

 

 

除了使用默認的Random()構造方法,還可使用指定的種子值初始化 System.Random 類的新實例。blog

for (int i = 1; i < 20000;i++ )
            {
                Random y = new Random(Guid.NewGuid().GetHashCode());
                PointPairList list1 = new PointPairList();

                for (int j = 0; j < 50; j++)
                {
                    double x = j;
                    double y1 = y.NextDouble() * 1000;
                    list1.Add(x, y1); //添加一組數據

                }

                LineItem myCurve = myPane.AddCurve("曲線"+i, list1, Color.Red, SymbolType.None);
               
            }
相關文章
相關標籤/搜索