2 回答

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個贊
如果您只想顯示沒有重復(fù)的結(jié)果,請嘗試:
while (alreadyUsed.Count < Names.Length)
{
int index = r.Next(0, Names.Length);
if (!alreadyUsed.Contains(Names[index]))
{
alreadyUsed.Add(Names[index]);
Console.WriteLine("The 1st Winner is: " + Names[index]);
}
}
請注意,在Console.WriteLine我使用當(dāng)前添加的項(xiàng)目Names[index]而不是Names[r.Next(0, Names.Length - 1)]

TA貢獻(xiàn)1842條經(jīng)驗(yàn) 獲得超22個贊
也許這個版本增加了一些可讀性:
while (alreadyUsed.Count < Names.Length)
{
var notUsedYet = Names.Except(alreadyUsed).ToArray();
var index = r.Next(0, notUsedYet.Length);
alreadyUsed.Add(notUsedYet[index]);
Console.WriteLine("The 1st Winner is: " + notUsedYet[index]);
}
- 2 回答
- 0 關(guān)注
- 225 瀏覽
添加回答
舉報(bào)