流程控制语句中 if语句和switch语句最全面的知识以及两种语言的区别

一、Java if语句

在 Java 中,语句是最小的组成单位,每个语句必须使用分号作为结束符。

选择结构(也叫分支结构)解决了顺序结构不能判断的缺点,可以根据一个条件判断执行哪些语句块。选择结构适合于带有逻辑或关系比较等条件判断的计算。

if 语句是使用最多的条件分支结构,它属于选择语句,也可以称为条件语句。

if结构:

if(条件表达式){
    语句块;
}

if-else 结构:

if (表达式) {
语句块1;
} else {
语句块2;
}

if-else-if结构:

if(表达式1) {
语句块1;
} elseif(表达式2) {
语句块2;
...
} elseif(表达式n) {
语句块n;
} else {
语句块n+1;
}
实例:判断录入数据是奇数还是偶数
Scannerscanner=newScanner(System.in);
        //判断输入的是偶数还是奇数
        System.out.println("请输入数值");
        inti1=scanner.nextInt();
​
            if (i1<=0) {
                System.out.println("请输入正确的数值");
            } elseif (i1%2==0) {
                System.out.println("输出的为偶数,数值为"+i1);
                break;
            } else {
                System.out.println("输出的为奇数,数值为"+i1);
                break;
            }

二、switch语句

if…else 语句可以用来描述一个“二岔路口”,我们只能选择其中一条路来继续走,然而生活中经常会碰到“多岔路口”的情况。switch 语句提供了 if 语句的一个变通形式,可以从多个语句块中选择其中的一个执行。

switch格式:

switch(表达式) {
case值1:
语句块1;
break;
case值2:
语句块2;
break;
…
case值n:
语句块n;
break;
default:
语句块n+1;
break;
}

(1)switch

表示“开关”,这个开关就是 switch 关键字后面小括号里的值,小括号里要放一个整型变量或字符型变量。表达式必须为 byte,short,int,char类型。

(2)case

表示“情况,情形”,case 标签可以是:

  • 类型为 char、byte、 short 或 int 的常量表达式。

  • 枚举常量。

  • 从 Java SE 7 开始, case 标签还可以是字符串字面量。

(3)default

表示“默认”,即其他情况都不满足。default 后要紧跟冒号,default 块和 case 块的先后顺序可以变动,不会影响程序执行结果。通常,default 块放在末尾,也可以省略不写。

(4)break

表示“停止”,即跳出当前结构。

实例:判断及那盘录入的成绩所在范围
publicstaticvoidmain(String[] agrs){
Scannerscanner=newScanner(System.in);
        System.out.println("请输入您的成绩,");
        doublegrade1=scanner.nextDouble();
        grade(grade1);
}
publicstaticvoidgrade(doublegrade){
        doublecum=grade;
        grade=grade/=10;
        switch ((int) grade){
            case1:
            case2:
                System.out.println("您的成绩过低,只有"+cum+"没有努力的必要了,建议退学");
                break;
            case3:
            case4:
            case5:
                System.out.println("您的成绩为"+cum+"不及格,请继续努力");
                break;
            case6:
            case7:
                System.out.println("您的成绩为"+cum+"已经及格,请把目标定在优秀");
                break;
            case8:
                System.out.println("您的成绩为"+cum+"已经达到优秀,请把目标定在超级优秀");
                break;
            case9:
                System.out.println("您的成绩为"+cum+"超级优秀,请把目标定在满分");
                break;
        }
    }

三、if语句和switch语句的区别

if 和 switch 语句都表示条件语句,可以从使用效率和实用性两方面加以区分。

1、从效率上区分

在对同一个变量的不同值作条件判断时,既可以使用 switch 语句,也可以使用 if 语句。使用 switch 语句的效率更高一些,尤其是判断的分支越多,越明显。

2、从实用性上区分

switch 语句不如 if 条件语句,if 语句是应用最广泛和最实用的语句。

3、如何使用if语句和switch语句

需要根据实际情况而定,应尽量做到物尽其用。不能因为 switch 语句的效率高就一直使用,也不能因为 if 语句常用就不用 switch 语句。需要根据实际情况,具体问题具体分析,使用最适合的条件语句。

一般情况下,对于判断条件较少的,可以使用 if 条件语句,但是在实现一些多条件的判断中,最好使用 switch语句。

  • 4
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值