C# for 徨环 for Loop

在这里,您将学习如何使用 for 循环多次执行语句或代码块、for 循环的结构、嵌套的 for 循环以及如何退出 for 循环。

for 关键字表示 C# 中的循环。 for 循环重复执行语句块,直到指定的条件返回 false。

for (initializer; condition; iterator)
{
    //code block 
}

下面是 for 循环的控制流:

initializer 初始化器 会首先被执行,且只会执行一次。这一步允许您声明并初始化任何循环控制变量。您也可以不在这里写任何语句,只要有一个分号出现即可。

接下来,会判断 condition。如果为真,则执行循环主体。如果为假,则不执行循环主体,且控制流会跳转到紧接着 for 循环的下一条语句。

在执行完 for 循环主体后,控制流会跳回上面的 iterator 迭代器 语句。该语句允许您更新循环控制变量。该语句可以留空,只要在条件后有一个分号出现即可。

条件再次被判断。如果为真,则执行循环,这个过程会不断重复(循环主体,然后增加步值,再然后重新判断条件)。在条件变为假时,for 循环终止。

实例

using System;

namespace Loops
{
    class Program
    {
        static void Main(string[] args)
        {
            /* for 循环执行 */
            for (int a = 10; a < 20; a = a + 1)
            {
                Console.WriteLine("a 的值: {0}", a);
            }
            Console.ReadLine();
        }
    }
}

当上面的代码被编译和执行时,它会产生下列结果:

a 的值: 10
a 的值: 11
a 的值: 12
a 的值: 13
a 的值: 14
a 的值: 15
a 的值: 16
a 的值: 17
a 的值: 18
a 的值: 19

for 无限循环

for ( ; ; )
{
    Console.Write(1);
}

不断的输出 1

迭代的地方也可以是 减的

for(int i = 5; i > 0; i--)
{
    Console.WriteLine("Value of i: {0}", i);
}

输出

Value of i: 5
Value of i: 4
Value of i: 3
Value of i: 2
Value of i: 1

退出循环 exit

有些时候我们在某个条件满足的时候需要跳出循环,这个用的是 break

int i = 0;

for(int i=0;i<10000;i++>)
{
    if (i < 10)
    {
        Console.WriteLine("Value of i: {0}", i);
        i++;
    }
    else
    {
        break;
    }
}

跳到下一个循环

有些时候我们在某个条件满足的时候需要跳出循环,这个用的是 break

  static void Main(string[] args)
        {
            for (int i = 0; i < 5; i++ )
            {
                if (i == 3)
                {
                    continue; //会重新开始循环,Console.WriteLine(i); 会被跳过
                }
                Console.WriteLine(i);
            }
        }

输出 3被跳过了

0
1
2
4

多个表达式

for 循环还可以包含多个以逗号分隔的初始化器和迭代器语句,如下所示。

for (int i = 0, j = 0; i+j < 5; i++, j++)
{
    Console.WriteLine("Value of i: {0}, J: {1} ", i,j);
}

输出 shell

Value of i: 0, J: 0
Value of i: 1, J: 1
Value of i: 2, J: 2

for 循环也可以包含语句作为初始化器和迭代器

int i = 0, j = 5;
for (Console.WriteLine($"Initializer: i={i}, j={j}"); 
    i++ < j--; 
    Console.WriteLine($"Iterator: i={i}, j={j}"))
    {
    }

输出

Initializer: i=0, j=5
Iterator: i=1, j=4
Iterator: i=2, j=3
Iterator: i=3, j=2

嵌套循环

C# 允许在另一个 for 循环中使用 for 循环。

for (int i = 0; i < 2; i++)
{
    for(int j =i; j < 4; j++)
        Console.WriteLine("Value of i: {0}, J: {1} ", i,j);
}

输出

Value of i: 0, J: 0
Value of i: 0, J: 1
Value of i: 0, J: 2
Value of i: 0, J: 3
Value of i: 1, J: 1
Value of i: 1, J: 2
Value of i: 1, J: 3
上一篇:C# 模式匹配
下一篇:C# for each 循环
最近更新的
...