一、复合语句
Java语言的复合语句是以整个块区为单位的语句,又称块语句。复合语句由“{”开始,“}”结束。
复合语句为局部变量创建了一个作用域,该作用域为程序的一部分,在该作用域中某个变量被创建并能够被使用,如果在某个变量的作用域外使用该变量,则会发生错误。并且复合语句中可以嵌套复合语句。
二、条件语句
1. if条件语句
if条件语句可选择是否要执行紧跟在条件之后的那个语句。关键字if之后是作为条件的“布尔表达式”,如果该表达式返回true,则执行其后的语句;若为false,则不执行if后的语句。可分为简单的if条件语句、if···else语句和if···else if多分支语句。例如:
int a = 100; if(a == 100) { System.out.println(a); }
如上方代码,{}之间为复合语句,if为条件语句,翻译过来就是如果a等于100,则输出a的值,否则不执行。
如果if后只有一条语句,比如上述代码只有一条输出,可以不加{},但为了代码的可读性,以及防止代码过多出现不必要的错误,建议所有的if、else后都加上相应的{}。
流程图:
2. if···else语句
if···else语句是条件语句中最常用的一种形式,它会针对某种条件有选择的作出处理。通常表现为“如果满足某种条件,就进行某种处理,否则就进行另一种处理”。
if后的()内的表达式必须是boolean型的。如果为true,则执行if后的复合语句;如果为false,则执行else后的复合语句。例如:
3. if···else if多分支语句
if···else if多分支语句用于针对某一事件的多种情况进行处理。通常表现为“如果满足某种条件”,就进行某种处理,否则,如果满足另一种条件,则进行另一种处理。
例如:
在本例中,由于x为40,条件x>60为false,程序向下执行判断;条件x>30为真,所以执行条件x>30后的程序块中的语句
所以,if语句只执行条件为真的语句,其它语句都不会执行。
4. switch多分支语句
switch语句是一种比较简单明了的多选一的选择,在Java语言中,可以用switch语句将动作组织起来进行多选一。语法格式如下:
switch(表达式)
{
case 常量值1:
语句块1
[break;]
...
case 常量值n:
语句块2
[break;]
default:
语句块 n+1;
[break;]
}
switch语句中表达式的值必须是整型或字符型,常量值1~n必须也是整型或字符型
三、循环语句
1. while循环语句
while循环语句的循环方式为利用一个条件来控制是否要继续反复执行这个语句。例如:
2. do···while循环语句
do···while循环语句与while循环语句的区别是,while循环语句先判断条件是否成立再执行循环体,而do···while循环语句则先执行一次循环后,再判断条件是否成立。也即do···while至少执行一次。语法格式如下:
do { 执行语句 } while (条件表达式);
3. for循环语句
for循环语句是Java程序设计中最有用的循环语句之一。一个for循环可以用来重复执行某条语句,知道某个条件得到满足。语法格式如下:
for(表达式1; 表达式2; 表达式3) { 语句序列 }
其中,表达式1为初始化表达式,负责完成变量的初始化;表达式2为循环条件表达式,指定循环条件;表达式3为循环后操作表达式,负责修整变量,改变循环条件。三个表达式间用分号隔开
流程图:
四、循环控制
1. break语句
break语句是用来中止case的。break语句在for、while、do···while循环语句中,用于强行退出当前循环,为什么说是当前循环呢,因为break只能跳出离它最近的那个循环的循环体,假设有两个循环嵌套使用,break用在内层循环下,则break只能跳出内层循环,如下:
for(int i=0; i<n; i++) { // 外层循环 for(int j=0; j<n ;j++) { // 内层循环 break; } }
2. continue语句
continue语句只能用于for、while、do···while循环语句中,用于让程序直接跳过其后面的语句,进行下一次循环。