在自己学习java语言的过程中,很容易把break和continue的用法混淆。为了便于以后快速查阅及温习,在此特留学习笔记一份。
简述
在任何迭代语句的主体部分,都可以用break和continue控制循环的流程。其中,break用于强行退出循环,不执行循环中剩余的语句。而continue则停止执行当前迭代,然后退回循环起始处,开始下一次迭代。
源码
下面这个程序向大家展示了break和continue在for和while循环中的例子:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
package com.mufeng.thefourthchapter;
public class BreakAndContinue {
public static void main(String[] args) {
for ( int i = 0 ; i < 100 ; i++) {
if (i == 74 ) { // Out of for loop
break ;
}
if (i % 9 != 0 ) { // Next iteration
continue ;
}
System.out.print(i + " " );
}
System.out.println();
int i = 0 ;
while ( true ) {
i++;
int j = i * 27 ;
if (j == 1269 ) { // Out of loop
break ;
}
if (i % 10 != 0 ) { // Top of loop
continue ;
}
System.out.print(i + " " );
}
}
}
|
输出结果
01.0 9 18 27 36 45 54 63 72
02.10 20 30 40
源码解析
在这个for循环中,i的值永远不会达到100,因为一旦i到达74,break语句就会中断循环。通常,只有在不知道中断条件何时满足时,才需要这样使用break。只要i不能被9整除,continue语句就会使执行过程返回到循环的最开头(这使i值递增)。如果能够整除,则将值显示出来。输出结果之所以显示0,是由于0%9等于0。
最后,可以看到一个“无穷while循环”的情况。然而,循环内部有一个break语句,可中止循环。除此之外,大家还会看到continue语句执行序列移回到循环的开头,而没有去完成continue语句之后的所用内容。(只有在i能被10整除时才打印出值。)
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持服务器之家。