c# 循环取出list中的值

怎样将numbers中的值 循环每次取出一个


// 最小数
            var min = 15;
            // 最大数
            var max = 20;
            // 要生成数的个数
            var digits = 30;
            // 最小出现次数
            var minOccurrences = 1;
            // 生成的数的集合
            var numbers = new List<int>();
            // 先确保从最大数到最小数递减至少都有一个数
            numbers.AddRange(Enumerable.Range(15, max - min + 1).SelectMany(x => Enumerable.Repeat(x, minOccurrences)));
            // 查看结果
            Console.WriteLine(string.Join(",", numbers));
            // 计算需要补位多少个数
            var fillGap = digits - (max - min + 1) * minOccurrences;
            Console.WriteLine($"需要补位{fillGap}个数");
            var random = new Random();
            // 生成补位的数
            for (var i = 0; i < fillGap; i++)
            {
                numbers.Add(random.Next(min, max + 1));
             
            }


            numbers = numbers.OrderByDescending(x => x).ToList();
            
            Console.WriteLine($"生成的集合元素个数:{numbers.Count}");
            Console.WriteLine(string.Join(",", numbers));