C# continue Statement

在C#中,我们使用continue语句来跳过一个循环的当前迭代。当我们的程序遇到continue语句时,程序会移动到循环的末尾并执行测试条件(在for循环的情况是update语句)。

continue的语法是:

continue;

在我们学习continue前,请先确保已学习过:

for循环

while循环

if...else

示例1:for循环中使用continue

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Drawing;
 6 using System.Windows.Forms;
 7 
 8 namespace continue_with_for_Demo
 9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             for (int i = 1; i <= 5; i++)
15             {
16                 if (i == 3)
17                 {
18                     continue;
19                 }
20                 Console.WriteLine(i);
21             }
22         }
23     }
24 }

 

 在上面的示例中,我们使用for循环来打印1至5的数字;

然而,数字3没有打印;

这是因为当数值是3的时候,continue语句会被执行。

1 // skips the condition
2 if (i == 3) {
3   continue;  
4 }

这会略过当前的循环迭代,移动程序的控制权至update语句。因此,数值3没有打印出来。

 

注:continue语句一般用于if...else语句中;

示例:while循环中使用continue

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Drawing;
 6 using System.Windows.Forms;
 7 
 8 namespace continue_with_while_Demo
 9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             int i = 0;
15             while (i < 5)
16             {
17                 i++;
18                 if (i == 3)
19                 {
20                     continue;
21                 }
22                 Console.WriteLine(i);
23             }
24         }
25     }
26 }

 

 这里,我们在while循环里面使用了continue语句。类似于先前的示例,当数值i是3时,continue语句被执行了。

因此,3没有打印在屏幕上。

嵌套循环中使用continue

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Drawing;
using System.Windows.Forms;

namespace Nested_with_continue_Demo
{
    class Program
    {
        static void Main(string[] args)
        {
            int sum = 0;

            //外部循环
            for (int i = 1; i <= 3; i++)
            {
                //内部循环
                for (int j = 1; j <= 3; j++)
                {
                    if (j == 2)
                    {
                        continue;
                    }
                Console.WriteLine("i = {0},j = {1}",i,j);
                }
            }
        }
    }
}

 

 在上面的示例中,我们在内部循环的for语句中使用了continue;

这时,当j == 2时,continue语句会被执行。

因此,j = 2的值会被忽略。

foreach循环中使用continue

 1 using System;
 2 using System.Collections.Generic;
 3 using System.Linq;
 4 using System.Text;
 5 using System.Drawing;
 6 using System.Windows.Forms;
 7 
 8 namespace Foreach_continue_Demo
 9 {
10     class Program
11     {
12         static void Main(string[] args)
13         {
14             int[] num = { 1,2,3,4,5};
15             foreach (int number in num)
16             {
17                 if (number == 3)
18                 {
19                     continue;
20                 }
21                 Console.WriteLine(number);
22             }
23         }
24     }
25 }

 

 在上面的示例中,我们创建了一个数组:1,2,3,4,5.在这里,我们用foreach循环打印数组中的每个元素。

然而,这个循环没有打印数值3.这是因为当数值等于3的时候,会执行continue语句。

if (number == 3) {
  continue;
}

因此,迭代的打印语句会跳过。

posted @ 2022-07-26 22:35  chenlight  阅读(86)  评论(0编辑  收藏  举报