我希望我的应用程序使用我选择的特定数字列表来填充随机数字集。 例如,我有一组数字(1,3,5,9,21,70,56)。 我希望能够随机选择这些数字的顺序。 这可能吗?
解决方案:
如果你想生成一个1000个数字的列表,只使用那些你给的。
Dim r as New Random()
Dim thousand as New List(Of Integer)(1000)
'short way to create an array
Dim onlyFrom = {1,3,5,9,21,70,56}
For i = 1 to 1000
thousand.Add(onlyFrom(r.Next(0, onlyFrom.Length)))
Next i
它反复向Random询问0和数组长度之间的随机整数。Next()可能会返回较低的数字,但绝不会返回较高的数字。文档介绍
如果你想把你给的那些数字洗成一个随机的顺序,可以用LINQ的简单方法。
Dim r as New Random()
Dim onlyFrom = {1,3,5,9,21,70,56}
Dim shuffled = onlyFrom.OrderBy(Function(x) r.Next()).ToArray()
注意: 不要在循环中使用New Random()
本文来自投稿,不代表实战宝典立场,如若转载,请注明出处:https://www.shizhanbaodian.com/10167.html