Java基础入门流程控制-if选择结构

if选择结构


前言

选择结构:根据条件判断结果选择不同的处理结果


一、基本的if选择结构(单分支选择结构)

1、语法结构

if (条件) {
		// 代码块;
}

2、执行规律

    判断条件,如果为true,执行{}里的代码块结束if结构,继续执行if结构后面的代码;如果为false,则直接跳过if结构,继续执行if结构后面的代码

3、注意

    条件必须为布尔值,不管条件写的简单或复杂,都只能是true或false
		 // 例:当某同学数学成绩大于90分,老师奖励小红花
         // 导入import java.util.Scanner,用Scanner键盘输入某同学成绩
         // 方式一:可以使用条件运算符实现
         // 方式二:使用基本if选择结构实现

        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入该同学成绩:");
        int score = scanner.nextInt();
        // 使用条件运算符实现
        String result = score > 90 ? "老师奖励小红花!" : "没有奖励继续努力";
        System.out.println(result);
        // if选择结构
        if (score > 90) {
            System.out.println("老师奖励小红花!");
        }

二、使用if-else选择结构(双分支选择结构)

1、语法结构

if (条件) {
		// 代码块1;
        }else {
        // 代码块2;
        }

2、执行规律

判断条件,如果条件为true,执行代码块1,结束if-else结构,执行后续代码;如果条件为false,执行代码块2,结束if-else结构,执行后续代码
// 如果Java考试成绩大于90分,奖励鼠标一个,否则就罚俯卧撑

        double javaScore = 99.5;
        if (javaScore > 90) {
            System.out.println("恭喜获得鼠标一个!");
        } else {
            System.out.println("奖励24个俯卧撑!");
        }
        System.out.println("请继续努力!");

三、使用多重if选择结构(多分支选择结构)

1、语法结构

if (条件1) {
		// 代码块1
} else if (条件2) {
		// 代码块2
} ......{

} else if (条件n) {
		// 代码块n
} else {
		// 代码块m
}

2、执行规律

首先判断条件1,如果条件1为true,则执行代码块1,结束整个if-else-if结构,执行后续代码;如果条件1为false,则继续判断条件2,如果为true,则执行代码块2,结束整个if-else-if结构,执行后续代码;如果如果条件2为false。。。。。。则继续判断条件n,如果为true,则执行代码块n,结束整个if-else-if结构;如果条件为false,则执行代码块m,结束整个if-else-if结构。
Scanner scanner = new Scanner(System.in);
        System.out.println("请输入您的成绩:");
        double score = scanner.nextDouble();
        if (score >= 80){
            System.out.println("您的成绩良好!");
        } else if (score >= 60) {
            System.out.println("您的成绩中等!");
        } else {
            System.out.println("您的成绩较差!");
        }
		// 注意:使用多重if选择语句处理问题时需要注意顺序

四、使用if嵌套选择结构(多分支选择结构)

1、语法结构

if (条件1) {
	// 代码块1
	if(条件2){
		// 代码块2
	}else{
		// 代码块3
	}
} else {
	// 代码块4
	if(条件3){
		// 代码块5
	}else{
		// 代码块6
}

2、执行规律

if里面套if,判断是否符合条件再判断
// 学校举行运动会,百米赛跑跑入10秒内的学生有资格进决赛,根据性别分别进入男子组和女子组
// 提示:字符串的比较使用equals(),sex.equals("男"); 结果为布尔值
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入你的百米赛跑成绩:");
        double runScore = scanner.nextDouble();
        // 判断是否进入决赛
        if (runScore < 10){
            System.out.println("恭喜你进入决赛!");
            System.out.println("请输入你的性别:");
            String gender=scanner.next();
            // 判断性别分为男子组与女子组,使用嵌套if选择结构
            if (gender.equals("男")){
                System.out.println("进入男子组决赛");
            } else if (gender.equals("女")){
                System.out.println("进入女子决赛组");
            } else {
                System.out.println("输入有误请重新输入");
                //如何实现循环,输入有误时可再次输入
            }
        } else {
            System.out.println("很遗憾没进入决赛");
        }

3、注意

多重if-else的使用条件为并列关系,判断是否满足条件1,否则判断是否满足条件2
嵌套if-if的使用条件为递进关系,满足条件1后,再判断是否满足条件2,否则判断条件3

五、练习

1、根据天气决定活动

/*根据天气,决定活动是在室外进行还是在室内进行,再根据温度决定活动的内容
        阴天:室外活动
                >28°室外游泳
                <=28°室外篮球
        晴天:室内活动
                >30°看电影
                <=30°敲代码,学习
         */
        Scanner scanner = new Scanner(System.in);
        System.out.println("请输入今日是晴天还是阴天:");
        String weather=scanner.next();
        if (weather.equals("晴天")){
            System.out.println("今日适合室内运动");
            System.out.println("请输入今日的温度:");
            double tem1=scanner.nextDouble();
            if(tem1 > 30){
                System.out.println("电影");
            }else if (tem1 <= 30){
                System.out.println("学习");
            }
        }else if (weather.equals("阴天")){
            System.out.println("今日适合室外运动");
            System.out.println("请输入今日的温度:");
            double tem2= scanner.nextDouble();
            if(tem2 > 28){
                System.out.println("游泳");
            }else if (tem2 <= 28){
                System.out.println("篮球");
            }
        }

2、实现幸运抽奖

// 实现幸运抽奖,会员卡号百位数字等于产生的随机数字即为幸运会员
// ------提示:产生随机数int random=(int)(Math.random()*10);------
	Scanner scanner = new Scanner(System.in);
        System.out.println("请输入您的四位会员卡号:");
        int num = scanner.nextInt();
        int baiwei = num/100%10;
        System.out.println("您输入的会员卡号百位:"+baiwei);
        // 判断百位是否等于产生随机数
        // 产生随机数范围在(0到9)
        int random=(int)(Math.random()*10);
        // 测试随机数的输出
        System.out.println(random);
        if (baiwei==random){
            System.out.println("恭喜您成为幸运会员!");
        }else{
            System.out.println("感谢您的支持,再见!");
        }
  • 8
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值