在c#中以随机数的倍数填充列表的末尾为零

本文关键字:列表 填充 随机数 | 更新日期: 2023-09-27 17:50:15

你好,我有一个列表,看起来像这样:

List<float> myList = new List<float>();

我用数字填充列表(来自麦克风的样本)。最后的Count号未知。

我用一个跳跃为8820的for循环在列表上运行(这个数字可以改变,我们称之为X)。但有时我会遇到异常循环的索引越界了。我必须用零填充列表的末尾,这样整个列表将是8820(X)的倍数。

有什么有效的方法来做到这一点吗?由于

在c#中以随机数的倍数填充列表的末尾为零

当达到列表计数时可以中断循环!

或者你可以在列表末尾加上一些0,像这样:

int X=8820;
for (int i = 0; i < X - (myList.Count / X); i++)
    myList.Add(0f);

试试这个:

// Declare and initialize variables
List<int> MyList = new List<int>();
Random r = new Random();
int LoopJumps = r.Next(2,30);
MyList.AddRange(Enumerable.Range(0, r.Next(1, 100));
// the loop code
for(int i=0; i < MyList.Count; i+= LoopJumps) {
    if(i >= MyList.Count) break;
    // Do your thing...
}