C#快速入门(六):跳出循环:break、continue、goto

一、跳出循环

1.1 break(直接跳出条件循环,后面的程序将不执行)

它不仅可以用来终止switch语句,在循环语句中使用时还可以用来跳出循环,执行循环外的下一条语句。如果是在嵌套循环中使用,例如在内层的循环中使用break语句,那么程序只会跳出内层的循环,并不会影响到外层循环的执行。

int index = 0;
for (int i = 0; i < 5; i++)
{
    if (i == 2)
    {
        //单个循环,跳出整个for循环,
        //多个循环,跳出最内层for循环
        break;
    }
    index = i;
}
Console.WriteLine(index);

 

1.2 continue(类似断点,跳出条件循环,但不影响继续执行)

C#中continue语句的工作原理与break语句类似,但是continue语句并不会跳出整个循环,而是跳过本次循环继续执行下一次的循环。

int index = 0;
for (int i = 0; i < 5; i++)
{
    if (i == 2)
    {
        //多个循环,跳出最内层本次循环,但是继续执行最内层下一次循环
        //单个循环,跳出本次循环,但是继续执行下一次循环
        continue;
    }
    index = i;
}
Console.WriteLine(index);

1.3 goto(可以跳到指定位置执行语句)

C#中的goto语句也称为跳转语句,使用它可以控制程序跳转到指定的位置执行。不过并不建议在程序中多次使用goto语句,因为它会程序变得更加复杂。在使用goto语句来跳转程序之前,必须先在想要跳转的位置定义好一个标签(labels),标签的名称的定义和变量名相似,然后使用goto标签名;即可使程序跳转到指定位置执行。goto语句并不限于在循环中使用,其他的情况也可以使用,但是,goto语句不能从循环外跳到循环语句中,而且不能跳出类的范围。

int indexI = 0;
int indexJ = 0;

a: //a层
for (int i = 0; i < 5; i++)
{
    b:  //b层
    for (int j = 0; j < 5; j++)
    {
        if (i == 3 && j == 2)
        {
            //如果多层循环,goto 跳转至指定位置,然后继续向下执行
            //以此条件为例:
            //跳至a,继续向下,会导致整个循环再一次被执行,造成整个程序一直无法结束,需要特别注意。
            //跳至b,继续向下,会导致里面循环再一次被执行,造成整个程序一直无法结束,需要特别注意。
            goto c;
        }
        indexJ = i;
    }
    indexI = i;
}
c:;
Console.WriteLine("indexI:" + indexI);
Console.WriteLine("indexJ:" + indexJ);

  • 12
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值