我的代码遇到问题。这些值是随机复制的,我不确定如何防止随机复制。
这是我的代码:
public static Dictionary<TKey, TValue> Shuffle<TKey, TValue>(
this Dictionary<TKey, TValue> source)
{
Random r = new Random();
return source.OrderBy(x => r.Next())
.ToDictionary(item => item.Key, item => item.Value);
}
答案 0 :(得分:0)
为了避免重复,您需要保留Random的实例。
考虑以下内容......
public static Dictionary<TKey, TValue> Shuffle<TKey, TValue>(
this Dictionary<TKey, TValue> source, Random r)
{
return source.OrderBy(x => r.Next())
.ToDictionary(item => item.Key, item => item.Value);
}
祝你好运!