选择结构
if 单选择结构
我们很多时候需要去判断一个东西是否可行,然后我们才去执行,这样一个过程在程序中用if语句来表示
if (布尔表达式){
//如果布尔表达式为true将执行的语句
}
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将执行的语句
}ese{
//布尔表达式为false将执行的语句
}
import java.util.Scanner;
public class IfDemo02 {
public static void main(String[] args){
//如果成绩大于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();
}
}
if 多选择结构
如果存在超过两个判断的情况,就需要用到多选择结构。
if (布尔表达式1){
//如果布尔表达式1的值为true,将要执行的语句
}else if(布尔表达式2){
//如果布尔表达式2的值为true,将要执行的语句
}else if (布尔表达式3){
//如果布尔表达式3的值为true,将要执行的语句
}else if (布尔表达式4){
//如果布尔表达式4的值为true,将要执行的语句
}else{
//如果以上表达式都为false,将要执行的语句
}
import java.util.Scanner;
public class IfDemo04 {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
/*
if语句至少有一个else语句,else语句在所有的else if之后
if语句可以带有若干个else if语句,它们必须在else语句之前
一旦其中一个else if语句检测为true,其他的else if以及else语句都将跳过,不会被执行。
*/
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("C级别");
}
else if (score<60&score>=0){
System.out.println("C级别");
}else{
System.out.println("成绩不合法");
}
scanner.close();
}
}
嵌套的 if 结构
switch 多选择结构
switch case 语句判断一个变量与一系列值中某个值是否相等,每个值称为一个分支。
switch 语句中的变量类型可以是:
- byte、short、int、或者char
- 从Java SE 7 开始
- switch 支持字符串String类型了
- 同时case标签必须为字符串常量或字面量
switch (expression){
case value:
//语句
break;//可选
case value2:
//语句
break;//可选
case value3:
//语句
break;//可选
case value4:
//语句
break;//可选
case value5:
//语句
break;
default: //可选
//语句
}
public class SwitchDemo01 {
public static void main(String[] args) {
//case穿透 //switch匹配一个具体的值
char grade = 'A';
switch (grade){
case 'A':
System.out.println("优秀");
break; //可选 分析:break以下代码不会被执行 所以养成规范,case后面都加上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;
case 'F':
System.out.println("退学");
break;
default:
System.out.println("未知等级");
}
}
}
public class SwitchDemo02 {
public static void main(String[] args) {
//定义变量
String name = "lisi";
//switch
switch(name){
case("lisi"):
System.out.println("错误");
break;
case("wanger"):
System.out.println("还是错误");
break;
case"mazi":
System.out.println("又错了");
break;
default:
System.out.println("退出")
}
}
}