流程控制语句
计算机在运行Java的程序时是有根据代码编译后按照一定的流程来运行的,程序员通过编写代码可以控制程序运行的流程,控制的方法结构有顺序结构、选择结构、循环结构这三种
一、顺序结构
代码从主函数开始逐行向下运行是一种宏观的代码运行结构
二、选择结构
在程序执行时根据条件选择执行代码。
选择结构有 if 与 switch 两种结构
if()
单分支 if 语句、双分支 if-else 语句、嵌套 if 语句、多分支 if-else 语句
- 单分支 if 语句是指当条件为true时执行一个动作。单分支if语句语法如下:
if(布尔表达式){
Demo1;//代码语句
}
流程图:
- 双分支 if-else 语句,当布尔表达式的计算结果为 true, 则执行条件为 true 时该执行的语句;否则,执行条件为 false 时该执行的语句。双分支 if-else 语句的语法如下:
if(布尔表达式){
Demo1;
}else(布尔表达式){
Demo2;
}
流程图如下:
- 嵌套 if 语句与多分支 if-else 语句,if 或if-else 语句中的语句可以是任意合法的 Java语句,甚至可以是其他的if 或if-else 语句。内层 if语句称为是嵌套在外层 if语句里的。内层 if语句还可以包含其他的 if 语句;事实上,对嵌套的深度没有限制。语法如下:
if(布尔表达式1){
Demo1;
if(布尔表达式2){
Demo2;
}else if(布尔表达式3){
Demo3;
}else{
Demo4;
}
Demo5;
}else{
Demo6;
}
switch()
switch 语句基于变量或者表达式的值来执行语句,switch所要求的变量的数据类型:byte short int char String 枚举,只能对单一的数据进行选择,语法如下:
switch(变量a){
case 1:
Demo1;break;
case 2:
Demo2;break;
case 3:
Demo3;break;
default:
Demo4;
}
流程图如下:
a=1时执行Demo1;a=2时执行Demo2;a=3时执行Demo3;
三、循环结构
循环是用来控制语句块重复执行的一种结构。
循环的四要素:
- 循环的初始化(开始)
- 循环的继续条件(结束条件)
- 循环体(需要被重复的操作)
- 循环的周期,步长(让循环的关键数据改变)i所变化的量
循环的概念是程序设计的基础。Java 提供 了三种类型的循环语句:while 循环、do-while 循环和 for 循环。循环的大致流程图如下:
假如需要输出:
********
********
********
********
********
- 如果不用循环,则代码为:
System.out.println("********");
System.out.println("********");
System.out.println("********");
System.out.println("********");
System.out.println("********");
- 显然这样的代码比较繁琐,用了循环结构后就不繁琐了,以for循环为例代码为:
for(int i=1;i<=5;i++){
System.out.println("********");
}
while循环的语法:
while(循环条件){ //当满足循环条件时进入循环体
Demo1; //循环体
循环条件的改变; //若无,则是死循环
}
do-while 循环是 while 循环的变体,它的语法如下:
do{
Demo1;//循环体
循环条件的改变;
}while(循环条件);
for循环的语法:
for(1 循环初始化;2 循环条件;4 循环条件的改变){
3 Demo1;
}//循环的流程为1234 234 234 ……至不满足循环条件然后结束循环
循环的嵌套:
嵌套循环是由一个外层循环和一个或多个内层循环组成的。每当重复执行一次外层循环时将再次进人内部循环,然后重新开始。
以for循环为例:
当需要输出:
*
**
***
****
*****
可以将一个for循环来实现一行打印*的个数,然后再将在这个for循环嵌套一个for循环来控制逐行打印,代码如下:
for(int i=1;i<=5;i++){
for(int j=1;j<=i;j++){
System.out.print("*");
}
System.out.println();
}