为了账号安全,请及时绑定邮箱和手机立即绑定

没有重复的随机名称选择器?

没有重复的随机名称选择器?

C#
HUWWW 2021-11-07 19:55:37
我正在从指定的列表中创建一个简单的名称选择器。我应该如何修改它以使其不重复已经“选择”的名称?static void Main(string[] args){    string[] Names = { "Erik", "Levente", "Noel", "Áron", "Krisztián", "Kristóf", "Bence", "Roland", "Máté", "László", "Bálint" ,    "Regina", "Brigitta", "Gréta", "Hédi", "Hanna", "Boglárka", "Jázmin", "Réka", "Alexandra", "Rebeka", "Lili", "Luca", "Zsófi"};    Random rnd2 = new Random();    Console.WriteLine("Az ID : '1' eszköz nyertese: " + Names[rnd2.Next(0, Names.Length - 1)]);    Random rnd3 = new Random();    Console.WriteLine("Az ID : '2' eszköz nyertese: " + Names[rnd2.Next(0, Names.Length - 1)]);    Random rnd4 = new Random();    Console.WriteLine("Az ID : '3' eszköz nyertese: " + Names[rnd2.Next(0, Names.Length - 1)]);    Random rnd5 = new Random();    Console.WriteLine("Az ID : '4' eszköz nyertese: " + Names[rnd2.Next(0, Names.Length - 1)]);    Random rnd6 = new Random();    Console.WriteLine("Az ID : '5' eszköz nyertese: " + Names[rnd2.Next(0, Names.Length - 1)]);    Random rnd7 = new Random();    Console.WriteLine("Az ID : '6' eszköz nyertese: " + Names[rnd2.Next(0, Names.Length - 1)]);    Console.ReadKey(true);}
查看完整描述

1 回答

?
临摹微笑

TA贡献1982条经验 获得超2个赞

例如,您可以通过存储您已经使用过的内容来确保没有重复项List<string>:


string[] names = new string[] { "bob", "james", "tim", "amanda", "lisa" }

List<string> alreadyUsed = new List<string>();

Random r = new Random();

while (alreadyUsed.Count < names.Length) {

    int index = r.Next(0, names.Length);

    if (!alreadyUsed.Contains(names[index])) {

        alreadyUsed.Add(names[index]);

        Console.WriteLine($"{names[index]} was added.");

    }

}


查看完整回答
反对 回复 2021-11-07
  • 1 回答
  • 0 关注
  • 214 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信