Java学习之路:流程控制( 二 )


Java学习之路:流程控制

文章插图
import java.util.Scanner;public class IfDemo01 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入内容:");String s = scanner.nextLine();//equals:判断字符串是否相等if (s.equals("Hello")){System.out.println(s);}System.out.println("END");scanner.close();}}结果:
请输入内容:HelloHelloEND3.2 if双选择结构当单if结构无法满足需求的时候 , 就行需要双选择if-else结构 。
语法:
if(布尔表达式){//如果布尔表达式的值为true}else{//如果布尔表达式的值为false}
Java学习之路:流程控制

文章插图
import java.util.Scanner;public class IfDemo02 {public static void main(String[] args) {//考试分数大于60及格,小于60不及格Scanner scanner = new Scanner(System.in);System.out.println("请输入成绩:");int score = scanner.nextInt();if (score>=60){System.out.println("及格");}else{System.out.println("不及格");}scanner.close();}}结果:
【Java学习之路:流程控制】请输入成绩:60及格3.3 if多选择结构当出现的选项不止两个时,需要一个多选择结构来处理这类问题 。
语法:
if(布尔表达式1){//如果布尔表达式1的值为true执行代码}else if(布尔表达式2){//如果布尔表达式2的值为true执行代码}else if(布尔表达式3){//如果布尔表达式3的值为true执行代码}else{//如果以上布尔表达式都不为true执行代码}
Java学习之路:流程控制

文章插图
import java.util.Scanner;public class IfDemo01 {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);System.out.println("请输入成绩:");int score = scanner.nextInt();if (score==100){System.out.println("恭喜满分");}else if (score<100 && score>=90){System.out.println("A");}else if (score<90 && score>=80){System.out.println("B");}else if (score<80 && score>=70){System.out.println("C");}else if (score<70 && score>=60){System.out.println("D");}else if (score<60 && score>=0){System.out.println("不及格");}else {System.out.println("成绩错误");}scanner.close();}}结果:
请输入成绩:100恭喜满分3.4 嵌套的if结构可以在if或者else if语句中嵌套使用if或者else if语句 。
语法:
if(布尔表达式1){//如果布尔表达式1的值为true执行代码if(布尔表达式2){//如果布尔表达式2的值为true执行代码}}3.5 switch多选择结构多选择结构也可以用switch case语句实现 。switch case语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支 。
switch语句的变量类型】
  • byte、short、int、char
  • 从Java SE 7开始
  • switch支持字符串String类型
  • case标签必须为字符串常量或者字面量
语法:
switch(expression){case value ://语句break; //可选case value ://语句break; //可选//可以有任意数量的case语句default : //可选//语句}示例代码:
public class SwitchDemo01 {public static void main(String[] args) {char grade = 'C';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;}}}结果:
及格【注意】
  • 存在case穿透
  • 不加break就会输出全部结果
4 循环结构4.1 while循环语法:
while(布尔表达式){//循环内容}【注意】
  • 只要布尔表达式为true,循环就回一直执行下去
  • 需要一个表达式失效的方式结束循环
  • 少部分情况需要循环一直执行
  • 循环条件一直为true会造成无限循环,应该避免这种情况,容易造成程序崩溃
【练习】计算1+2+3+...+100=?
public class WhileDemo01 {public static void main(String[] args) {int i = 1;int sum = 0;while (i<=100){sum = sum + i;i++;}System.out.println(sum);}}结果:
50504.2 do while循环对于while语句而言,如果不满足条件,则不能进入循环 。当需要即使不满足条件 , 也至少执行一次 。do while循环会至少执行一次 。
语法:
do {//代码语句}while(布尔表达式);

推荐阅读