Java流程控制语句
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:MyEclipse 10 Java
作者:陈剑波
撰写时间:2019年04月30日
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
流程控制语句:在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。
流程控制语句分类:顺序结构、选择结构、循环结构。
- 顺序结构:是程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。
- 选择结构:也被称为分支结构。选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码。
Java语言提供了两种选择结构语句:
- if语句:
if(布尔表达式){
//如果布尔表达式为true将执行的语句
}
if...else语句:
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
(二) switch语句:
switch(表达式) {
case 表达式值 1:
语句块 1;
break;
....
case 表达式 N:
语句块 N;
break;
default:
语句块;
}
执行过程:当 switch 后表达式的值和 case 语句后的值相同时,从该位置开始向下执行,直到遇到 break 语句或者 switch 语句块结束;如果没有匹配的 case 语句则执行 default 块的代码。
switch语句规则:
- switch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开 始,switch 支持字符串 String 类型了,同时 case 标签必须为字符串常量或字面 量。
- switch 语句可以拥有多个 case 语句。每个 case 后面跟一个要比较的值和冒号。
- case 语句中的值的数据类型必须与变量的数据类型相同,而且只能是常量或者字 面常量。
示例代码:
- 3.循环结构:主要有三种 for循环、while循环,do while循环、Java增强for循环。
(一)for循环:
格式:
for(初始化; 条件表达式; 增量) {
//代码语句
}
初始化:总是一个赋值语句,它用来给变量赋初值;
条件表达式:是一个关系表达式,它决定什么时候退出循环;
增量:定义循环控制变量每循环一次后 按什么方式变化。
执行过程:首先执行初始化表达式,判断循环条件,如果条件返回值为true,执行循环语句,然后执行循环后表达式,再次判断循环条件……
示例代码:
(二)while循环:
while是基本的循环,它的结构为:
格式:
while( 布尔表达式 ) {
//循环内容
}
执行过程:先进行条件判断;成立执行循环体,不成立不进行循环;执行后再判断成立不成立;
(三)do...while循环:
while(布尔表达式)和 do…while(布尔表达式)类似,while是先判断后执行,do…while是先执行一次然后再判断条件。如果布尔表达式结果为真,那么两个循环语句结果相同,若布尔表达式的第一次结果为假,do…while会先执行一次,而while则不会继续执行。
格式:
do {
//循环内容
} while( 布尔表达式 )
执行过程: 先执行一遍循环操作,然后判断循环条件是否成立,如果条件成立,继续执行,直到循环条件不成立为止。
示例代码及运行结果:
(四)Java增强型for循环:
Java5 引入了一种主要用于数组的增强型for循环。但需要注意一点:Java增强型for循 环只能取值,不能赋值
格式:
for(声明语句 : 表达式) {
//代码句子
}
示例代码及运行结果:
(五) return break continue的基本用法
- break:跳出当前循环;但是如果是嵌套循环,则只能跳出当前的这一层循环,只有逐层break才能跳出所有循环;
- continue:终止当前循环,但是不跳出循环(在循环中continue后面的语句是不会执行了),继续往下根据循环条件执行循环。
- return:
- return从当前的方法中退出,返回到该调用的方法的语句处,继续执行。
- return 返回一个值给调用该方法的语句,返回值的数据类型必须与方法的声明中的返回值的类型一致。
- return后面也可以不带参数,不带参数就是返回空,其实主要目的就是用于想中断函数执行,返回调用函数处。
特别注意:返回值为void的方法,从某个判断中跳出,必须用return;
示例代码: