Java流程控制02
顺序结构(除非特别指明,否则就是就是按照顺序执行)
package com.xu.struct;
public class ShunXuDemo {
public static void main(String[] args) {
System.out.println("hello1");
System.out.println("hello2");
System.out.println("hello3");
System.out.println("hello4");
System.out.println("hello5");
}
}
选择结构
-
if单选择结构
package com.xu.struct; 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(); } }
-
if双选择结构
package com.xu.struct; 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("不及格"); } } }
-
if多选择结构
package com.xu.struct;
import java.util.Scanner;
public class IfDemo03 {
public static void main(String[] args) {
//考试分数大于60就是及格,小于60就是不及格
Scanner scanner = new Scanner(System.in);
System.out.println("输入成绩:");
int score = scanner.nextInt();
/*
if 语句至少有 1 个else 语句。 else 语句在所有的 else if 语句之后。
if 语句可以有若干个else if 语句。它们必须在else 语句之前。
一旦其中一个else if 语句检测为 ture 其他的 else if 以及 else 语句都将跳过执行。
*/
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();
}
}
-
嵌套的if结构
-
switch多选择结构
package com.xu.struct; public class SwitchDemo01 { public static void main(String[] args) { //case穿透 //switch 匹配一个具体的值 **每写一个case都带上一个break** char grade = 'F'; 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 'E': System.out.println("挂科"); break; default: System.out.println("未知等级"); } } }
package com.xu.struct; public class SwitchDemo02 { public static void main(String[] args) { String name ="哆啦A梦"; //JDK7的特性,表达式结果可以是字符串 //字符的本质还是数字 //反编译 java----class(字节码文件)----反编译(IDEA) switch (name){ case"哆啦A梦": System.out.println("哆啦A梦"); break; case "大雄": System.out.println("大雄"); break; default: System.out.println("平成时代"); } } }
switch case(判断一个变量与一系列值中某个值是否相等,每个值成为一个分支)
switch 语句中的变量可以是
- byte、short、int、char
- 要从Java SE 7开始
- switch支持字符串String类型
- case标签必须为字符串常量或字面量