在此示例中,break 子句如何响应?
How does the break clause respond in this examples?
break
子句如何工作?
我知道如果我在循环中有一个 break
,循环将终止它的执行。例如:
for (int i=0; i<10; i++) {
break;
}
但是,如果 break
子句既在循环内又在 if
或 else
内,它会起作用吗?例如:
for (int i=0; i<10; i++) {
if (i==7) {
//code
break;
//code
}
}
break
子句会使 for
循环结束,还是会跳过 if
子句中它旁边的代码并继续迭代?
如果 break
子句在一个循环内的循环内怎么办?它会结束两个循环的执行还是只结束最近的循环?
提前致谢。
break 语句总是只退出内部循环。 If 语句不算作那些。如果你需要一次打破多个循环,你可以使用标签:
A: while (true) {
B: while (true) {
break A;
}
}
'break' 语句总是会中断循环。如果您想跳过特定索引处的迭代,可以使用 'continue' 关键字:
for (int i=0; i<10; i++) {
if (i==7) {
//code
continue;
//second part of code
}
}
这段代码要做的是,如果 i == 7,它会 运行 //代码部分,当它到达 continue 语句时,它会立即跳过 //第二部分代码并移动到下一次迭代 i = 8。如果您有多个嵌套循环,则 break 语句将仅中断应用它的循环。但是,如果父循环中断,则子(嵌套)循环也会自动中断。
for (int i=0; i<10; i++) {
for(int j = 0; j<10; j++){
if(j==3){
break;
}
}
}
此代码只会在 j 等于 3 时中断内部循环。请记住,由于第二个循环是嵌套的,即使它中断了,它也会在父循环结束时再次 运行到它的下一个索引。
break
导致跳转到循环的末尾,见下文:
for (int i=0; i<10; i++) {
if (i==7) {
// code here will be executed
break;
// code here will not be executed
}
} // break statement is like a goto to this line
a break
将始终只影响一个循环,即它所在的最内层循环
for (int i=0; i<10; i++) {
if (i==7) {
//code A
break;
//code B
}
}
这将 运行 循环 8 次并在 i=7
时中断整个循环。此外,code B
在 break
语句之后将无法访问,因此在这种情况下编写它没有任何意义。
break
子句如何工作?
我知道如果我在循环中有一个 break
,循环将终止它的执行。例如:
for (int i=0; i<10; i++) {
break;
}
但是,如果 break
子句既在循环内又在 if
或 else
内,它会起作用吗?例如:
for (int i=0; i<10; i++) {
if (i==7) {
//code
break;
//code
}
}
break
子句会使 for
循环结束,还是会跳过 if
子句中它旁边的代码并继续迭代?
如果 break
子句在一个循环内的循环内怎么办?它会结束两个循环的执行还是只结束最近的循环?
提前致谢。
break 语句总是只退出内部循环。 If 语句不算作那些。如果你需要一次打破多个循环,你可以使用标签:
A: while (true) {
B: while (true) {
break A;
}
}
'break' 语句总是会中断循环。如果您想跳过特定索引处的迭代,可以使用 'continue' 关键字:
for (int i=0; i<10; i++) {
if (i==7) {
//code
continue;
//second part of code
}
}
这段代码要做的是,如果 i == 7,它会 运行 //代码部分,当它到达 continue 语句时,它会立即跳过 //第二部分代码并移动到下一次迭代 i = 8。如果您有多个嵌套循环,则 break 语句将仅中断应用它的循环。但是,如果父循环中断,则子(嵌套)循环也会自动中断。
for (int i=0; i<10; i++) {
for(int j = 0; j<10; j++){
if(j==3){
break;
}
}
}
此代码只会在 j 等于 3 时中断内部循环。请记住,由于第二个循环是嵌套的,即使它中断了,它也会在父循环结束时再次 运行到它的下一个索引。
break
导致跳转到循环的末尾,见下文:
for (int i=0; i<10; i++) {
if (i==7) {
// code here will be executed
break;
// code here will not be executed
}
} // break statement is like a goto to this line
a break
将始终只影响一个循环,即它所在的最内层循环
for (int i=0; i<10; i++) {
if (i==7) {
//code A
break;
//code B
}
}
这将 运行 循环 8 次并在 i=7
时中断整个循环。此外,code B
在 break
语句之后将无法访问,因此在这种情况下编写它没有任何意义。