C# 生成不重复随机数:更高效的代码示例
以下是一种更好的方法来生成一个范围内的随机不重复数字的C#代码:\n\ncsharp\nusing System;\nusing System.Collections.Generic;\n\npublic class Program\n{\n public static void Main(string[] args)\n {\n List<int> numbers = GenerateRandomNumbers(1, 10, 5);\n foreach (int number in numbers)\n {\n Console.WriteLine(number);\n }\n }\n\n public static List<int> GenerateRandomNumbers(int min, int max, int count)\n {\n if (count > max - min + 1)\n {\n throw new ArgumentException("Count cannot be greater than the range of numbers");\n }\n\n List<int> numbers = new List<int>();\n Random random = new Random();\n\n while (numbers.Count < count)\n {\n int randomNumber = random.Next(min, max + 1);\n if (!numbers.Contains(randomNumber))\n {\n numbers.Add(randomNumber);\n }\n }\n\n return numbers;\n }\n}\n\n\n使用GenerateRandomNumbers方法,你可以指定一个范围的最小值和最大值,以及要生成的随机不重复数字的数量。此方法使用了一个List<int>来存储已生成的数字,并使用Random类生成随机数字。如果生成的数字已存在于列表中,则不会添加。\n\n请注意,如果要生成的数字数量大于给定范围内的数字数量,将会抛出ArgumentException异常。
原文地址: https://www.cveoy.top/t/topic/p1RK 著作权归作者所有。请勿转载和采集!