Java流程控制_1
顺序结构
- Java的基本结构就是顺序结构
- 从上到下的顺序执行
- 是任何一个算法都离不开的一种基本算法结构
package com.dcl.struct;
public class ShunXuDemo {
public static void main(String[] args) {
System.out.println("hello1");
System.out.println("hello2");
System.out.println("hello3");
}
}
选择结构
if单选择结构
-
判断一个东西是否可行,然后去执行
-
语法:
if(布尔表达式){ //如果布尔表达式为true将执行的语句 }
package com.dcl.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双选择结构
- 有两个判断时
- 语法:
if(布尔表达式){
//如果布尔表达式的值为true
}else{
//如果布尔表达式的值为false
}
package com.dcl.struct;
import java.util.Scanner;
public class IfDemo02 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
//考试分数大于60就是及格,小于60分就不及格
System.out.println("请输入成绩:");
int score = scanner.nextInt();
if(score > 60){
System.out.println("成绩合格!");
}else{
System.out.println("成绩不合格!");
}
scanner.close();
}
}
if多选择结构
- 区间多级判断
- 语法:
if(布尔表达式 1){
//如果布尔表达式 1的值为true执行代码
}else if(布尔表达式 2){
//如果布尔表达式 2的值为true执行代码
}else if(布尔表达式 3){
//如果布尔表达式 3的值为true执行代码
}else{
//如果以上布尔表达式都不为true执行代码
}
package com.dcl.struct;
import java.util.Scanner;
public class IfDemo03 {
public static void main(String[] args) {
//考试分数100为满分,<100>=90为A,<90>=80为B,<80>=70为C,<70>=60为及格,小于60分为不及格
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("很庆幸,你刚好及格!");
}else if(score<60 && score>=0){
System.out.println("很不幸,你没有及格!");
}else{ //要严谨!!!
System.out.println("成绩不合法!");
}
scanner.close();
}
}
注意点:
- if语句至多有一个else语句,并且位于所有的else if 语句之后
- 可以有若干个else if 语句,必须在els语句之前
- 一旦有一个else if 语句检测为true,其他的else if 以及 else 语句都跳过执行
嵌套的if结构
- 可以像if语句一样嵌套else if……else
- 语法:
if(布尔值表达式 1){
//如果布尔表达式 1的值为true执行代码
if(布尔值表达式 2){
//如果布尔表达式 2的值为true执行代码
}
}
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://可选 //语句 }package com.dcl.struct; public class SwitchDemo01 { public static void main(String[] args) { //case穿透 //switch 匹配一个具体的值 char grade = 'C'; switch (grade){ case 'A': System.out.println("优秀"); break; //不写break就会持续输出 case 'B': System.out.println("良好"); break; case 'C': System.out.println("及格"); break; case 'D': System.out.println("挂科"); break; default: System.out.println("未知等级!"); } } }字符串String 类型
package com.dcl.struct; public class SwitchDemo02 { public static void main(String[] args) { String name = "有小小小"; //jdk7新特性,表达式结果可以是字符串! //字符的本质还是数字 //反编译 java---class (字节码文件)----反编译(IDEA) switch (name){ case "小小小": System.out.println("xxx"); break; case "有小小小": System.out.println("is me"); break; default: System.out.println("No"); } } }

浙公网安备 33010602011771号