程序从上到下执行
if(条件表达式){ 执行表达式 }
if(条件表达式){ 执行表达式1 }else if{ 执行表达式2 }
if(条件表达式){ 执行表达式1 }else if{ 执行表达式2 }else if{ 执行表达式3 } ... else{ 执行表达式n }
switch(表达式){ case 常量1: 执行语句1; break; case 常量2: 执行语句2; break; ... default: 执行语句n; }
①初始化条件
②循环条件 --- boolean类型
③循环体
④迭代条件
说明:通常情况下,循环结束都是因为②中循环条件返回false。
for(①初始化条件;②循环条件;④迭代条件){ ③循环体; } // 执行过程:① - ② - ③ - ④ - ② - ③ - ④ - ... - ②
①初始化条件; while(②循环条件){ ③循环体; ④迭代条件; } // 执行过程:① - ② - ③ - ④ - ② - ③ - ④ - ... - ②
说明
①初始化条件; do{ ③循环体; ④迭代条件; }while(②循环条件); // 执行过程:① - ③ - ④ - ② - ③ - ④ - ... - ②
说明
while(true){ if(条件表达式){ 表达式; }else{ break; // 循环体结束语句 } } // ================= for(;;){ if(条件表达式){ 表达式; }else{ break; // 循环体结束语句 } }
说明
for(int j = 1;j <=4;j++){ for(int i = 1;i <= 6;i++){ System.out.print('*'); } System.out.println(); }
示例代码
//练习二: /* i(行号) j(*的个数) * 1 1 ** 2 2 *** 3 3 **** 4 4 ***** 5 5 */ for(int i = 1;i <= 5;i++){//控制行数 for(int j = 1;j <= i;j++){//控制列数 System.out.print("*"); } System.out.println(); }
衡量一个功能代码的优劣
如何理解流程控制的练习:
使用范围 循环中使用的作用(不同点) 相同点
break: switch-case
循环结构中 结束当前循环 关键字后面不能声明执行语句
continue: 循环结构中 结束当次循环 关键字后面不能声明执行语句
补充:带标签的break和continue的使用
label: for(int j = 1;j <=4;j++){ for(int i = 1;i <= 6;i++){ System.out.print('*'); if(i == '4'){ break label; } } System.out.println(); }
/* 如何从键盘获取不同类型的变量:需要使用Scanner类 具体实现步骤: 1.导包:import java.util.Scanner; 2.Scanner的实例化:Scanner scan = new Scanner(System.in); 3.调用Scanner类的相关方法(next()/neatXxx()),来获取指定类型的变量 注意: 需要根据相应的方法,来输入指定类型的值。如果输入的数据类型与要求的类型不匹配,回报异常:InputMisMatchException 导致程序终止 */ import java.util.Scanner; class ScannerTest{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); // int num = scan.nextInt(); System.out.println("请输入你的姓名:"); String name = scan.next(); System.out.println(name); System.out.println("请输入你的年龄:"); int age = scan.nextInt(); System.out.println(age); System.out.println("请输入你的体重:"); double weight = scan.nextDouble(); System.out.println(weight); System.out.println("是否单身!(true/false)"); boolean isTrue = scan.nextBoolean(); System.out.println(isTrue); // 对于char型的获取,Scanner没有提供相关的方法,只能获取一个字符串 System.out.println("请输入你的性别:"); String gender = scan.next(); char genderChar = gender.charAt(0); // 获取索引为0位置上的字符 // System.out.println(gender); System.out.println(genderChar); } }