我有一个长度为100的字符串数组.我希望在C#中没有重复元素的100个元素中随机获得8个元素.请帮我.我很感激.我只是用:
for (int i = 0; i < 8; i++)
{
work with 8 values here
}
Run Code Online (Sandbox Code Playgroud)
上面的代码只执行8个第一个值而不是8个随机值.
简单的方法:
var random = new Random();
var randomValues = arr.OrderBy(x => random.Next()).Take(8)
Run Code Online (Sandbox Code Playgroud)
有效方式:使用Fisher-Yates shuffle.Jon Skeet在这里提供了实施.
| 归档时间: |
|
| 查看次数: |
59 次 |
| 最近记录: |