两种选择结构语句

两种选择结构语句

if语句

1.1 if(){…}

格式:
    if(判断语句){
        代码;
    }
执行流程:
	如果判断语句的结果是true,就会执行括号中的代码
	如果判断语句的结果是false,就不会执行括号中的代码
注意:
	1.if语句可以写在main()方法中的任何位置;
	2.在if(){}语句的()后面没有分号

代码

	public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入一个数字:");
        int a = sc.nextInt();
        if(a>10){
            System.out.println(a+"是大于10的数字");
        }
    }

console

请输入一个数字:
15
15是大于10的数字

1.2 if()…else

格式:
    if(条件判断){
        代码;
    }else{
        代码
    }
执行流程:
    如果判断语句的结果是true,那就执行if里的代码
    如果判断语句的结果是false,那就执行else里面的代码
注意:
	1.else后面没有表达式

代码

	public static void main(String[] args) {
        /*
        练习:输入两个数,比较两个数的大小
         */
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入第一个数字:");
        int a = sc.nextInt();
        System.out.println("请输入第二个数字:");
        int b = sc.nextInt();
        if(a>b){
            System.out.println("最大数为:"+a);
        }else {
            System.out.println("最大数为:"+b);
        }
    }

console

请输入第一个数字:
10
请输入第二个数字:
20
最大数为:20

1.3 if()…else if()…else

格式:
	if(判断语句1){
        代码1
    }else if(判断语句2){
        代码2
    }else if(判断语句3){
        代码3
    }else if(判断语句n){
        代码n
    }else{
        代码4
    }
 执行流程:
 	如果判断语句1的结果为true,就执行代码1,不会继续往下判断
 	如果判断语句1的结果为false,就继续判断第二个判断语句
 	如果前面的所有if判断都是false,则执行else里的代码

代码

	public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的分数:");
        int score = sc.nextInt();
        if (score>=90 && score<=100){
            System.out.println("很优秀!");
        }else if (score>=70 && score<90){
            System.out.println("良好");
        }else if (score>=60 && score<70){
            System.out.println("及格");
        } else if (score > 0 && score < 60) {
            System.out.println("不及格");
        }else {
            System.out.println("输入分数有误!!");
        }
	}

console

请输入你的分数:
98
很优秀!

swith语句

格式:
	switch(变量){
        case 值1:
        	代码1;
        	break;
        case 值2:
        	代码2;
        	break;
        case 值3:
        	代码3;
        	break;
        case 值n:
        	代码n;
        	break;
        default:
			代码;
			break;
	}
执行流程:
	如果switch中的变量等于值1,就执行代码1
	如果switch中的遍历等于值2,就执行代码2
	如果所有的case都不匹配,就执行default
	不管执行谁,都会在遇到break之后结束,如果没有break,那么case会出现穿透现象
使用场景:
	专门用于定值的判断,不适合判断变量的范围
变量类型:
	byte  short   int   char  String   枚举

代码

public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入数字:");
        int week = sc.nextInt();
        switch (week){
            case 1:
                System.out.println("星期一");
                break;
            case 7:
                System.out.println("星期日");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            default:
                System.out.println("输入有误!");
                break;
        }
    }

console

请输入数字:
3
星期三

比较switch和多重if选择结构:

相同点:
	都是用来处理多分支条件的结构。
不同点:
	1.switch选择结构:只能处理等值条件判断的情况,不能用于范围的判断
	2.多重if选择结构:没有switch选择结构的限制,特别适合某个变量处于某个连续区间时的情况
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值