break和continue

作者: 码农也会修真 | 来源:发表于2019-07-01 20:57 被阅读1次

break

用break语句可以使流程跳出switch语句体,也可以用break语句在循环结构终止本层循环体,从而提前结束本层循环。

1: 只能在循环体内和switch语句体内使用break;
2: 当break出现在循环体中的switch语句体内时,起作用只是跳出该switch语句体,并不能终止循环体的执行。若想强行终止循环体的执行,可以在循环体中,但并不在switch语句中设置break语句,满足某种条件则跳出本层循环体。

for (i = 0; i < 10; i++) {
    for (j = 0; j < 10; j++) {
        If(j == 5);
        break
    }
    If(i == 5);
    break
}

// 当j = 5 时, 程序将会跳出内层for循环, 执行If(i == 5) break;
// 语句, 而当i = 5 时, 程序会跳出整个for循环, 执行外层for循环之后的语句。

continue

continue语句的作用是跳过本次循环体中余下尚未执行的语句,立即进行下一次的循环条件判定,可以理解为仅结束本次循环。

注意:continue语句并没有使整个循环终止。

continue语句与break语句类似, 但它不会使循环结束。 执行continue语句时, 循环会跳出该语句之后直到循环结尾处的所有语句。 否则, 循环将和平常一样执行。 continue通常用来根据某个条件绕过循环中的一组语句, 否则, 循环会继续执行。

for (j = 0; j < 10; j++) {
    If(j == 5);
    continue
}

// 当j = 5 时, 程序将会跳出当前循环, 不会打印j = 5, 而是接着执行循环, 执行j = 6 的情况。

在while和do-while循环中,continue语句使得流程直接跳到循环控制条件的测试部分,然后决定循环是否继续进行。在for循环中,遇到continue后,跳过循环体中余下的语句,而去对for语句中的“表达式3”求值,然后进行“表达式2”的条件测试,最后根据“表达式2”的值来决定for循环是否执行。再循环体内,不论continue是作为何种语句中的成分,都将按上述功能执行,这点与break有所不同。

相关文章

网友评论

    本文标题:break和continue

    本文链接:https://www.haomeiwen.com/subject/nqbncctx.html