JavaDay第03章-switch选择结构

35 篇文章 1 订阅

语法结构:

                switch(表达式){

                        case   常量表达式1:

                                  语句块1;

                                  break;

                       case   常量表达式2:

                                  语句块2;

                                  break;

                                ……

                        case   常量表达式n:

                                   语句块n;

                                   break;

                        default:

                                   语句块n+1;

                                   break;

                }

执行规律:

        在程序执行到switch选择结构时,首先计算括号里表达式,将表达式的值与第一个case后的常量表达式1的值进行比较,如果值相同;则程序流程转进语句块1,执行语句块1里的内容,break结束整个switch选择结构 ;否则将将表达式的值与第二个case后面的常量表达式2的值进行比较,以此类推,只有表达式的值与case后的表达式的值相同,程序流程才转入表达式里的代码块,执行到break结束整个switch选择结构 ;如果表达式的值与全部的case后的表达式的值都不匹配,则执行defaultl里的代码块,执行到break结束整个switch选择结构。流程图如下:

流程图:

例如:

输入Java学习成绩, 90-100之间为优秀,80-89之间为优良,70-79之间为良好,60-69之间为及格,60分以下为不及格。

package cn.work.text;
import java.util.Scanner;
public class text01 {
	public static void main(String[] args){
		/*
		 * 输入Java学习成绩,
		 * 90-100之间为优秀,
		 * 80-89之间为优良,
		 * 70-79之间为良好,
		 * 60-69之间为及格
		 * 60分以下为不及格。
		 */
		Scanner in = new Scanner(System.in);
		System.out.println("请输入Java成绩:");
		int score = in.nextInt();
		switch(score / 10){
			case 9:
				System.out.println("Java成绩优秀");
				break;
			case 8:
				System.out.println("Java成绩优良");
				break;
			case 7:
				System.out.println("Java成绩良好");
				break;
			case 6:
				System.out.println("Java成绩及格");
				break;
			default:
				System.out.println("Java成绩不及格");
				break;
		}	
	}
}

 注意:

  • switch的值可以是char、byte、shirt、int、枚举类型、字符串类型(与JDK版本有关)。
  • case后的常量表达式结果不能相同。
  • case后的常量表达式内不能出现变量。
  • default与if选择结构中的else想用,当switch括号里的条件表达式与全部case后的常量表达式值不匹配时,执行default语句。
  • default语句可以省略不写,但当switch括号里的条件表达式与全部case后的常量表达式值不匹配时,整个switch选择结构不执行。
  • default语句可以卸载switch中的任意位置,一般写在最后位置。
  • break的作用是结束switch选择结构,如果没有break结束switch选择结构会产生“穿透”现象。

switch选择结构与if多分枝选择结构的相同点与不同点:

        相同点:

                都能用来处理拥有多种条件的情况

        不同点:

                switch选择结构只能用来处理表达式与常量表达式值相同的情况。

                if多分枝选择结构既能处理值相同的情况,也能处理变量在某个连续值的情况。

                

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值