使用continue忽略本次循环剩下的语句

continue的功能和break有点类似,区别是continue只是忽略本次循环剩下的语句,接着开始下一次循环,并不会终止循环;而break则是完全终止循环本身。如下程序示范了continue的用法。

public class ContinueDemo{

public static void main(String[] args){

for(int i = 0; i<3; i++){

System.out.println("i的值是" + i);

if(i == 1){

continue;

}

System.out.println("continue后的输出语句");

}

}

}

运行上面的程序,将看到如图20所示的运行结果。

图20  ContinueDemo运行结果

从上面运行结果来看,当i等于1时,程序没有输出“continue后的输出语句”字符串,因为程序执行到continue时,忽略了当此循环中continue语句后的代码。从这个意义上来看,如果把一个continue语句放在单次循环的最后一行,这个continue语句是没有任何意义的,因为它仅仅忽略了一片空白,没有忽略任何程序语句。

与break类似的是,continue后也可以紧跟一个标签,用于直接跳过标签所标识循环的当此循环剩下的语句,重新开始下一次循环。例如下面的代码。

public class ContinueDemo2{

public static void main(String[] args){

outer;

for(int i = 0; i<5; i++){

for(int j = 0; j<3; j++){

System.out.println("i的值为:" + i + "j的值为:" + j);

if(j == 1){

continue outer;

}

}

}

}

}

运行上面程序可以看到,循环变量j的值将无法超过1,因为每当j等于1时,continue outer语句就结束了外层循环的当此循环,直接开始下一次循环,内层循环没有机会执行完成。

与break类似的是,continue后的标签也必须是一个有效的标签,即这个标签通常应该放在continue所在循环的外层循环之前定义。

使用return结束方法

return关键字并不是专门用于结束循环的,return的功能是结束一个方法。当一个方法执行到一个return语句时(return关键字后还可以跟变量、常量和表达式),这个方法将被结束。

Java程序中大部分循环都被放在方法中执行,例如前面介绍的所有循环程序。一旦在循环体内执行到一个return语句,return语句就会结束该方法,循环自然也随之结束。例如下面的程序。

public class ReturnDemo{

public static void main(String[] args){

for(int i = 0; i<3; i++){

System.out.println("i的值为:" + i);

if(i == 1){

return;

}

System.out.println("return后的输出语句");

}

}

}

运行上面的程序,循环只能执行到i等于1时,当i等于1时程序将完全结束(当main方法结束时,也就是Java程序结束时)。从这个运行结果来看,虽然return并不是专门用于循环结构控制的关键字,但通过return语句确实可以结束一个循环。与continue和break不同的是,return直接结束整个方法,不管这个return处于多少层循环之中。

IT兄弟连 Java语法教程 流程控制语句 控制循环结构2的更多相关文章

  1. IT兄弟连 Java语法教程 流程控制语句 控制循环结构1

    Java语言没有提供goto语句来控制程序的跳转,这种做法提高了程序流程控制的可读性,但降低了程序流程控制的灵活性.为了弥补这种不足,Java提供了continue和break来控制循环结构.除此之外 ...

  2. IT兄弟连 Java语法教程 流程控制语句 控制循环结构3

    使用continue忽略本次循环剩下的语句 continue的功能和break有点类似,区别是continue只是忽略本次循环剩下的语句,接着开始下一次循环,并不会终止循环:而break则是完全终止循 ...

  3. IT兄弟连 Java语法教程 流程控制语句 循环结构语句1

    循环语句可以在满足循环条件的情况下,反复执行某一点代码,这段被重复执行的代码被称为循环体,当反复执行这个循环体时,需要在合适的时候把循环条件该为假,从而结束循环,否则循环将一直执行下去,形成死循环.循 ...

  4. IT兄弟连 Java语法教程 流程控制语句 分支结构语句1

    不论哪一种编程语言,都会提供两种基本的流程控制结构:分支结构和循环结构.其中分支结构用于实现根据条件来选择性地执行某段代码,循环结构则用于实现根据循环条件重复执行某段代码.Java同样提供了这两种流程 ...

  5. IT兄弟连 Java语法教程 流程控制语句 循环结构语句3

    while循环 Java中的另外一种循环是while循环.while循环的语法格式如下: while(条件表达式){ 循环体; } 其中条件表达式定义了控制循环的条件,可以使任何有效的boolean表 ...

  6. IT兄弟连 Java语法教程 流程控制语句 经典案例

    使用continue忽略本次循环剩下的语句 continue的功能和break有点类似,区别是continue只是忽略本次循环剩下的语句,接着开始下一次循环,并不会终止循环:而break则是完全终止循 ...

  7. IT兄弟连 Java语法教程 流程控制语句 分支结构语句5

    5  switch-case条件语句 Java中的第二种分支控制语句时switch语句,switch语句提供了多路支持,因此可以使程序在多个选项中进行选择.尽管一系列嵌套if语句可以执行多路测试,然而 ...

  8. IT兄弟连 Java语法教程 流程控制语句 循环结构语句4

    do-while循环 Java还有一种循环是do-while.与for.while这些在循环顶部判断条件表达式的语句不同,do-while是在循环底部进行条件表达式的检查.这意味着do-while循环 ...

  9. IT兄弟连 Java语法教程 流程控制语句 分支结构语句4

    4  嵌套if-else条件语句 嵌套if语句是作为另一个if或else语句的目标的if语句.嵌套if语句在程序设计中非常普遍.Java中,关于嵌套if语句需要记住的是,else语句总是和同一代码块中 ...

随机推荐

  1. OGG For Oracle To PostgreSQL

    本文档描述OGG(Oracle goldengate)为Oracle同步到PostgreSQL数据库配置.在目前去“IOE”潮流.PostgreSQL确实是Oracle最好的替代品之一. 实验环境如下 ...

  2. Python的map方法的应用

    Map方法,第一个参数要写一个匿名函数表达式,或者是一个函数引用,第二个第三个往后都是表达式用到的参数,参数一般是可迭代的 1.比如下面这个map方法,两个参数,第一个 lambda x: x*x是匿 ...

  3. 六、接上一个博客-ITK例子运行结果

    一.程序介绍 该程序的主要思路如下: 二.程序参数 1-程序自己创建三维图像的时候 我自己计算得到的参数如下: 三维图像参数:  旋转参数: 光线投射法参数: 当我们输入参数:  -v 得到程序的输出 ...

  4. git中报错---fatal: pathspec 'readme.txt' did not match any files

    1.git安装 git官网下载最新版本,一键安装或custom install. 2.会弹出一个类似的命令窗口的东西,就说明Git安装成功. 3.安装完成后,还需要最后一步设置,在命令行输入如下--- ...

  5. lxml导入

    通常的导入方式 from lxml import etree python有自带的ElementTree库,但lxml在其基础上新增了特有的功能 如果代码仅使用ElementTree API,不依赖于 ...

  6. 跨域问题,解决方案-Nginx反向代理

    跨域问题,解决之道 跨域问题,在日常开发过程中,是一个非常熟悉的名词.今天的话题,结合我之前的项目场景,讨论下<跨域问题,解决之道>. 跨域是什么 跨域问题,是由于JavaScript出于 ...

  7. 递归找到多级文件夹中所有pdf文件的py程序

    因个人需要,写了一个可以递归找到多级文件夹中所有pdf的小程序,发布出来供有需要的人参考或使用. import os import re import shutil from os.path impo ...

  8. SQL查询语法30例

    学好SQL查询:无他,概手熟耳. 1. 基础表: 学生表: 老师表: 课程表: 成绩表: 2. 题目: 1.查询名字中含有"华"字的学生信息 select * from 学生 wh ...

  9. abp去掉AbpUser中的Name,Surname,去掉姓和名分离

    abp是国外的框架,默认的框架中的AbpUser表中的Name和Surname是分开的,这不符合国情:可以先去掉 1. 在User类中重写Name和Surname,并设置为私有 2. 在DbConte ...

  10. The server time zone value '�й���׼ʱ��' is unrecognized or represents more than one time zone.

    介绍 再使用spring操作mysql数据库报错 @Test public void test() { try { //创建连接池,先使用spring框架内置的连接池 DriverManagerDat ...