首先呢,流程控制可以分为三类:
定义:顺序结构就是代码从主函数开始由上至下依次执行。
public class Demo {
public static void main(String[] args) {
System.out.println("程序开始了...");
System.out.println("我爱Java");
System.out.println("程序结束了!");
}
}
// 依次输出 :程序开始了
我爱JAVA
程序结束了!
选择结构又可分为:
定义:是根据条件判断之后再做处理的一种语法结构。
基本格式如下:
if(条件表达式){ //执行时先判断条件,结果为true时
//再执行第一个花括号里的代码块。
代码块;
}else{
代码块; //结果为false时,执行这个代码块
}
//if后边括号里的条件必须是一个布尔表达式,即表达式的值必须为布尔值。
if语句又分为:
1.单if形式
单if形式
if(条件表达式){
当条件为true时执行的代码;
}
2.嵌套if-else形式
注意:
3.if-else-if形式
对这个图的解释:代码块A执行完再执行B,若为真再执行代码块C,接下来再执行I。若B的执行为false,则执行D......
什么是switch选择结构:
switch(int或者String类型的字面值或变量){
case int或者String类型的字面值或变量:
java语句
......
break;
case int或者String类型的字面值或变量:
java语句
.....
break;
case int或者String类型的字面值或变量:
java语句
......
break;
default:
java语句
......
}
//switch后边的小括号中的数据和case后边的数据进行等值匹配(只能判断单一的值),匹配成功的分支执行;按照自上而下的顺序依次匹配。
switch选择结构注意事项:
举个例子:
switch(grade) {
case 'A' :
System.out.println("优秀");
break;
case 'B' :
System.out.println("良好");
break;
case 'c' :
System.out.println("及格");
break;
case 'D' :
System.out.println("不及格");
break;
default :
System.out.println("未知等级");
}
循环结构主要有:
1.for 循环的语法(主要用于已知次数的循环)
for(初始化; 布尔表达式; 循环的步长) {
中间循环体
}
//初始化表达式只读一次,,判断布尔表达式,为真就执行循环体,然后再执行循环后的操作表达式,接着继续判断循环条件,重复找个过程,直到条件不满足为止 。
for循环的例子:
class Demo03_10{
public static void main(String[] args) {
/*
空格数与行数:空格数=n-行数
左边的数字:从行数到一
右边的数字:从二到行数
*/
Scanner input = new Scanner(System.in);
System.out.print("Enter the number of lines:");
int n = input.nextInt();
for(int i = 1;i <= n; i++){
for(int j = 1; j <= n-i; j++){ //输出左边空格
System.out.print(" " + "\t");
}
for(int m = i; m >= 1; m--){ //输出左边数字
System.out.print(m + "\t");
}
for(int l = 2; l <= i; l++){ //输出右边数字
System.out.print(l + "\t");
}
System.out.print("\n");
}
}
}
//输出数字金字塔
2.while循环(不知重复次数但是已知结束条件的循环)
while(布尔表达式){
循环内容
}
//当条件表达式为true时,就会执行while后面大括号中的语句,当把大括号中的所有语 句执行完之后,会又回到while的条件表达式处再次判断,若还为true,就继续执行大括号 中的语句,若为false就跳过大括号中的所有语句,继续往下执行 。
while循环注意事项:
while(true){
1.循环初始化
2.循环的继续条件
3.循环体
4.循环的步长
}
//注意:这么写while循环的话,逻辑上比较顺畅的,但是有危险,在于本身是死循环,需要在合适的时候用break关键字跳出循环