Java三大流程控制语句之多重分支+嵌套分支

雨霖先森 2022-09-23 22:04:58

Java三大流程控制语句之多重分支+嵌套分支

一、多重if分支

1.语法结构:

        if(表达式1){
            
            ...代码块1...
            
        }else if(表达式2){
            
            ...代码块2...
            
        }else if(表达式n){
            
            ...代码块n...
            
        }else{
            ...else代码块...
        }

2.理解:

表达式的结果必须是boolean类型 从上往下判断,哪个表达式先为true就执行对应的代码块 如果都不为true,执行else代码块 注意:else{}根据需求可写可不写

3.深入使用

案例一:人类的健康值

15-20的数值内为偏瘦 20-25的数值内为健康 25-30的数值内为偏胖 (健康值算法为:体重(Kg) / 身高(米)的平方)

import java.util.Scanner;
public class 文件名{
    public static void main(String[] args){
        //1.从控制台输入体重和身高
        Scanner scan = new Scanner(System.in);
        System.out.println("请输入体重(Kg):");
        double weight = scan.nextDouble();
        System.out.println("请输入身高(m):");
        double height = scan.nextDouble();
            
        //2.计算健康值
        double health = weight/(height*height);
        
        //3.判断区间
        if(health>15 && health<=20){
            System.out.println("医生说:\"偏瘦,多喝酒、多吃垃圾食品、多熬夜\"");
            }else if(health>20 && health<=25){
                System.out.println("医生说:\"健康,请保持现有状态\"");
            }else if(health>25 && health<=30){
                System.out.println("医生说:\"偏胖,多做运动,嘿嘿嘿~~~\"");
            }else{
                System.out.println("医生说:\"数据异常,请到医院进行详细检查\"");
            }
        
            
    }
}

案例二:通过键盘录入学生成绩

        如果在90-100之间,则打印“A”,
        否则如果在80-90之间,则打印“B”,
        否则如果在70-80之间,则打印“C”
        否则如果在60-70之间,则打印“D”
        否则如果在0-60之间,则打印“E”
        否则打印“成绩异常”
import java.util.Scanner;
public class 文件名{
    public static void main(String[] args){
            Scanner scan = new Scanner(System.in);
            System.out.println("请输入成绩:");
            double score = scan.nextDouble();
            if(score>=90 && score<=100){
                System.out.println("A");
            }else if(score>=80 && score<90){
                System.out.println("B");
            }else if(score>=70 && score<80){
                System.out.println("C");
            }else if(score>=60 && score<70){
                System.out.println("D");
            }else if(score>=0 && score<60){
                System.out.println("E");
            }else{
                System.out.println("成绩异常");
            }
            
    }
}

4.小结:

多重if分支:在多选一的情况下使用

二、嵌套if分支

案例:

行运动会,百米赛跑跑入16秒内的学生有资格进决赛, 根据性别分别进入男子组和女子组。

import java.util.Scanner;
public class 文件名{
    public static void main(String[] args){
            Scanner scan = new Scanner(System.in);
            System.out.println("请输入成绩:");
            double score = scan.nextDouble();
            if(score > 0 && score < 16){    
                System.out.println("请输入性别:");
                String sex = scan.next();
                if(sex.equals("男")){//判断sex和"男"这两个字符串是否相同的方法
                    System.out.println("恭喜进入到男子组决赛");
                }else if(sex.equals("女")){//判断sex和"女"这两个字符串是否相同的方法
                    System.out.println("恭喜进入到女子组决赛");
                }else{
                    System.out.println("性别异常");
                }
                
            }else if(score > 16){
                
                System.out.println("谢谢参与~~~");
                
            }else{//输入负数的情况
                System.out.println("成绩异常");
            }
            
    }
}

小结:

if可以无限层嵌套

三、总结

        if(){}要么进入、要么不进入
        if分支可以判断区间
        if分支可以判断复杂条件
        if...else...:二选一的情况下使用
        多重if分支:在多选一的情况下使用
        if可以无限层嵌套
*/

四、转义字符

    含义:具有特殊意义的字符
​
    \" - 表示一个双引号字符
    \' - 表示一个单引号字符
    \\ - 表示一个斜杠字符
    \n - 表示换行
    \t - 表示水平制表
public class 文件名{
    public static void main(String[] args){
        System.out.println("她说:\"你胖吗?\"");
        System.out.println("我说:\'不胖不胖\'");
        System.out.println("她说:\\真嫌弃\\");
        System.out.print("用心去学习\n");
        System.out.print("做努力的自己");
        gSystem.out.println("3*2=6\t3*3=9\t3*4=12\t3*5=15");
        System.out.println("4*2=8\t4*3=12\t4*4=16\t4*5=20");
    }
}

五、常量

含义:在程序执行过程中不可发生改变的量

分类:

1.数字字面量:程序中出现的数字

整数数字默认:int

小数数字默认:double

2.字面值常量:使用双引号括起来的内容

3.使用final修饰的变量

注意:不能被重新赋值 final int i = 100; System.out.println(i);

...全文
62 回复 打赏 收藏 转发到动态 举报
写回复
用AI写文章
回复
切换为时间正序
请发表友善的回复…
发表回复

51,407

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧