![Java常用算法手册(第3版)](https://wfqqreader-1252317822.image.myqcloud.com/cover/106/31729106/b_31729106.jpg)
1.10 跳转结构
Java中可以用break或continue语句来改变程序的执行,实现跳转。
1.10.1 break
在switch结构中,break语句用来退出switch语句,使程序继续执行switch的后续语句。而在循环中,可以使用break语句退出循环,并从紧跟循环结构的第一条语句开始执行。在Java中写程序时要避免死循环,而有时可以看到while(true)这样的循环,实际上只要在循环体中,在满足某个条件时使用break语句跳出循环即可。
1.10.2 continue
break语句用来退出循环,并从紧跟该循环结构的第一条语句处开始执行。而continue语句则跳过循环体中下面没有执行的语句,回到循环体的开始处,开始下一轮循环。因此,continue的作用是让本次循环中位于continue之后的语句不执行,重新开始下一轮循环。
如果用户需要打印2~20之间的奇数,除了以往的用for循环步长来控制外,还可以使用continue语句。代码如下:
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00038003.jpg?sign=1735121730-kYMTHZN99JQNOKMPU3UqfRIdVjyOTrxb-0-189e0767687c1fdbd64b8551245fd57b)
1.10.3 编程实例
【程序1-12】打印3~100之间的素数,每行打印6个数。
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00038004.jpg?sign=1735121730-W3jy4MwZQP9EDZEZO4geBTW6FaokwSck-0-c195b9eac327e063041214902c4e3e74)
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00039001.jpg?sign=1735121730-OWIqPQFlluoxSTInSLr3KxfVbHiRr8NM-0-7dade4dfdadfdea47691cb93c627f547)
【分析】通过程序代码来实现素数的判断,实现的思路不只一种,本题采用的思路是:先假定一个数是素数,接下来通过循环从2往上验证此数能否被某个数整除,一旦能整除,则将先前置为true的布尔变量修改为false,然后退出内层循环。最后根据布尔变量的值,来判断某个数是否为素数。
程序运行的结果如图1-36所示。
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00039002.jpg?sign=1735121730-YlUvsE58dVA9sd50Lkdst15D2PIkqmqA-0-ca1157801c306094b5f01e4406b88ec1)
图1-36 打印素数
【程序1-13】编写程序,提供一个queryCoding(String sArg)方法,能对用户传递的字符串参数中的汉字打印出Unicode编码。若参数中含有非汉字的其他符号,则自动跳过。
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00039003.jpg?sign=1735121730-QoRlZ2GiXnQAfY6B1ZdVy0ZcnLcAC8cG-0-5f60b201198f7e01e600fab1083b967c)
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00040001.jpg?sign=1735121730-W3mElh8zYGiMenvJgETgJvFo5fqZi3mJ-0-020857e85ad7e991b5e4314c5306be0f)
【分析】String类的charAt方法可以取出单个字符。汉字的Unicode编码范围为19968~40869,总共20902个汉字。本例演示continue的使用,使用它可以在满足特定条件时忽略循环体中的某些语句。
演示continue的使用如图1-37所示。
![](https://epubservercos.yuewen.com/FCD0C8/17180245404473706/epubprivate/OEBPS/Images/img00040002.jpg?sign=1735121730-CkXNIDPPHGiIOUux14TSfbv35pKMzNeV-0-1626b266d82bbde3baa11f01f952e5d1)
图1-37 演示continue的使用