程序内部执行的顺序
- 顺序控制
- 分支控制
- 循环控制
程序从上到下逐行地执行,中间没有任何判断和跳转
分支控制让程序有选择的执行
单分支if(条件表达式){
执行代码块(如果只有一条语句可以不加{})
}
双分支
if(条件表达式){
执行代码块1
}else{
执行代码块2
}
多分支else与最邻近的if构成一组
if(条件表达式){
执行代码块1
}else if(条件表达式){
执行代码块2
}else if(条件表达式){
执行代码块3
}
...
}else{
(不一定要用else作为最后的分支,else if也可以做最后的分支)
执行代码块n
}
嵌套分支
在一个完整的分支结构中再嵌套了另一个完整的分支结构
if(条件表达式){
if(条件表达式){
执行程序块
}else{
执行程序块
}
}else{
...
}
swich分支结构
switch(表达式){
case 常量1:
语句1;
break;
case 常量2:
语句2;
break;
...
case 常量n:
语句n;
break;
default:
default语句;
break;
}
循环控制 for循环控制流程图
switch中的表达式返回值必须是:byte、short、int、char、enum、String
for(循环变量初始化;循环条件;循环变量迭代){
执行代码块
}
while循环控制
- for语句内部定义一个变量,这个变量就不能在循环体之外使用,如果要使用该变量,就要确保在外部声明
- 可以在各自独立的不同for循环中定义同名的变量
while(循环条件){
执行代码块;
循环变量迭代;
}
do…while 循环控制
循环变量初始化
do{
执行代码块;
循环变量迭代;
}while(循环条件);
多重循环控制
将一个循环体放在另一个循环体内,就形成了嵌套循环。
九九乘法表public class NinenineMultiplicationTable{
//打印九九乘法表
public static void main(String[] args){
int i = 1;
int j = 1;
for(i = 1;i <= 9;i++){
for(j = 1;j <= i;j++){
System.out.print("t" + j + "*" + i + "=" + i*j);
}
System.out.println('n');
}
}
}
空心金字塔
public class HollowPyramid{
//打印空心金字塔
public static void main(String[] args){
int totalLevel = 10;
//层数
for(int i = 1;i <= totalLevel;i ++){
//输出*之前,输出对应空格 = 总层数-当前层
for(int k = 1;k <= totalLevel - i;k++){
System.out.print(" ");
}
//控制打印每层*个数
for(int j = 1;j <= 2 * i - 1;j++){
if (j == 1||j == 2 * i - 1||i == totalLevel){
System.out.print("*");
}else{
System.out.print(" ");
}
}
//打印完一层自动换行
System.out.println("");
}
}
}
跳转控制语句
break
跳出最近的循环体,可以和标签搭配,跳出多重循环。
label1:{ ....
label2: { ....
label3: { ....
break;
....
}
}
}
continue
结束本次循环,继续执行下一次循环
{ ...
continue;
...
}
return
使用在方法中,表示跳出所在的方法。



