我如何让阵列开始而不是结束呢?

时间:2013-11-08 23:13:10

标签: c# winforms

这是timer1 tick事件中的代码:

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
}

2 个答案:

答案 0 :(得分:3)

我怀疑你实际上想要:

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

(我已经将变量名更改为更常规。)

注意条件的变化 - 如果你递增 fileIndex,你想知道你什么时候结束,而不是开始。

答案 1 :(得分:2)

也许你想要这个

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

意思是,当你的索引到达数组中的最后一个元素时,从零开始重新启动....(使用&gt; =安全)