【问题标题】:Randomly rearrange array items c# [duplicate]随机重新排列数组项目c# [重复]
【发布时间】:2023-03-16 20:29:01
【问题描述】:

我有一个包含从 1 到 100 的数字的 c# int 数组 这意味着

myArray[0] = 1;
myArray[1] = 2;
....
myArray[99] = 100;

但我想在这个数组中随机重新排列它们,在 c# 中可以吗?

【问题讨论】:

标签: c# arrays random int


【解决方案1】:

使用 Random 和 Linq,您可以轻松做到:

Random r = new Random();

myArray = myArray.OrderBy(x => r.Next()).ToArray();

上面使用Random 对象为数组中的每个元素提供了随机排序顺序。

您需要在文件顶部添加using System.Linq; 才能使用OrderBy 扩展方法。

【讨论】:

  • @HenkHolterman 这将如何产生重复?如果原始数组有唯一编号。
  • “提供随机排序顺序” - 嗯,随机,但不是尽可能随机。
  • @فراساليحياوي 它是数组中的一个元素。 OrderBy 在内部是一个循环。 x 是一次迭代中数组中的一个元素。好像你说foreach(var x in myArray)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-12-11
  • 1970-01-01
  • 2010-09-29
  • 2014-07-30
  • 2012-04-11
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多