如何在body外部声明的int中使用for或while循环?

时间:2011-04-01 21:58:27

标签: c#

我有一个循环,就像这样:

        for (i < splitted.Length; i++ != 0)
                {
                    key += '\\' + splitted[i];

                }

取决于上面的if条件,i,在循环体外部decdlared,可能需要递增(我将字符串拆分为字符串[]然后需要连接它的部分,但可能来自第5个索引,6等,取决于if子句中的条件。)

但是,C#不允许我像上面那样编写循环。我可以像上面那样有一个循环吗?

由于

3 个答案:

答案 0 :(得分:2)

您可以使用空的初始化子句以允许在for循环之外进行分配:

int i = 0;
for ( ; i < 10; ++i)
    Console.WriteLine(i);

答案 1 :(得分:1)

        for (;i < splitted.Length; i++)
        {
           if (i!=0)
            key += '\\' + splitted[i];

        }

答案 2 :(得分:1)

C#中的for语句有3个部分(初始值设定项,条件和迭代器),它们由;分隔。

for (initializer; condition; iterator)

这些部分中的任何一个都可以为空。您提供的语法仅指定2个部分,因此给出了编译错误。由于变量是在循环外声明的,因此您希望通过将其保留为空来跳过初始化程序

for (; i < splitted.Length; i++)