1.3Java分支语句

分支语句使用场景

在实际生活中经常需要作出一些判断,比如开车来到一个十字路口,这时需要对红绿灯进行判断,如果前面是红灯,就停车等候,如果是绿灯,就通行。Java中有一种特殊的语句叫做条件语句或者分支语句,它也需要对一些条件作出判断,从而决定执行哪一段代码。

if结构

在这里插入图片描述

基本if语句

if选择结构是根据条件判断之后再做处理
在这里插入图片描述
示例代码:

import java.util.Scanner;
public class Demo {
	public static void main(String[] args) {
		Scanner input = new Scanner(System.in); 
         	System.out.print(“输入你的Java成绩: "); //提示输入Java成绩
         	int score =  input.nextInt(); 	//从控制台获取Java成绩
        	 if ( score > 90 ) {    			//判断是否大于90分
             		System.out.println(“获得女生向你表白的机会");
         	}
	}
}

if-else语句

只运用if语句会有很多限制,如果格局条件的不同有两种结果,if语句使用起来就有很大的局限性,这时候就要使用if-else

if…else语句语法格式:

在这里插入图片描述
if…else语句的执行流程:

在这里插入图片描述
代码示例:

import java.util.Scanner;

public class Main6 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的分数");  //控制台提示输入分数
        int score = sc.nextInt();             //将输入的分数保存到score中
        if(score >= 90){
            System.out.println("成绩优秀");    //如果分数大于或等于90分就打印成绩优秀
        }else {
            System.out.println("你可以做的更好");//如果分数小于90分打印你可以做的更好
        }
    }
}

多重if语句

多重if语句和if-else非常相似,只是在if-else的基础上增加更多的可选项,根据条件的不同执行不同的语句
在这里插入图片描述
示例代码

import java.util.Scanner;

public class Main6 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的分数");  //控制台提示输入分数
        int score = sc.nextInt();             //将输入的分数保存到score中
        if(score >= 90){
            System.out.println("努力得100分");    //如果分数大于或等于90分就打印努力得100分
        }else if(score>=80){
            System.out.println("成绩优秀");//如果分数大于或等于80分打印成绩优秀
        }else if(score>=60){

            System.out.println("成绩及格");//如果分数大于或等于60分打印成绩及格
        }else{
            System.out.println("成绩有待提高");//如果上述条件都不满足就打印成绩有待提高
        }
    }
}

嵌套if语句

嵌套if语句就是在满足一个条件的前提下,在判断是否满足其他的条件,嵌套if语句可以根据实际需要的不同进行多层嵌套
在这里插入图片描述
代码示例

import java.util.Scanner;

public class Main7 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入性别");
        String gender = sc.next();
        System.out.println("请输入名次");
        int record = sc.nextInt();
        if(gender.equals("男")){         //判断性别是否是男,是则执行男子组子分支语句
            if(record<=3){              
                System.out.println("恭喜你进入男子组前三名");
            }else {
                System.out.println("你的名次是男子组第" + record + "名");
            }
        }else {                          //性别不是男则进入女子组分支
            if(record<=3){
                System.out.println("恭喜你进入女子组前三名");
            }else {
                System.out.println("你的名次是女子组第" + record + "名");
            }
        }
    }
}

switch结构

在使用if语句结构的时候会发现,在条件较少的情况下会比较方便,但是可判断的条件很多时,if语句就会变得复杂繁琐,而且会影响程序的执行速度,这个时候,就需要运用switch语句
在这里插入图片描述

switch语句有关规则

1.switch(表达式)中表达式的返回值必须是下述几种类型之一:int, byte, char, short, 枚举, 字符串String(JDK7之后支持)case子句中的值必须是常量,且所有case子句中的值应是不同的;
2.default子句是任选的;
3.break语句用来在执行完一个case分支后使程序跳出switch语句块,如果没有break语句会继续向下执行,直到程序退出;

比较switch和多重if选择结构

在这里插入图片描述
在这里插入图片描述

这个问题编程思路和if语句有一点小不同,if语句是直接根据数字进行判断,而使用switch语句之前会简单的处理一下,根据分数的十位进行判断等级
示例代码

import java.util.Scanner;

public class Demo2 {
    public static void main(String[] arg){
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入分数");
        int score = scanner.nextInt();
        switch (score/10){
            case 10:
            case 9:
                System.out.println("A");
                break;
            case 8:
                System.out.println("B");
                break;
            case 7:
                System.out.println("C");
                break;
            case 6:
                System.out.println("D");
                break;
            default:
                System.out.println("E");
                break;
        }
    }
}

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值