-2

这是timer1tick事件中的代码:

file_indxs = file_indxs - 1;
if (file_indxs < 0)
{
    file_indxs = file_array.Length - 1;
}

file_array.Length - 1是它将从数组末尾开始的末尾数组中的最后一个文件。

但我想做:

file_indxs = file_indxs + 1;
if (file_indxs == 0)
{
    file_indxs = the beginning of the array. not the Length - 1
}
4

2 回答 2

3

我怀疑你实际上想要:

fileIndex++;
if (fileIndex == fileArray.Length)
{
    fileIndex = 0;
}

(我同时将变量名称更改为更常规的名称。)

注意条件的变化——如果你在增加 fileIndex,你想知道你什么时候到达终点,而不是起点。

于 2013-11-08T23:17:36.880 回答
2

也许你想要这个

file_indxs = file_indxs + 1;
if (file_indxs >= file_array.Length)
{
    file_indxs = 0;
}

意思是,当您的索引到达数组中的最后一个元素时,从零重新开始......(出于安全考虑,使用 >=)

于 2013-11-08T23:16:50.537 回答