学Java的第十五天

本文详细介绍了Java中的switch语句,包括其语法结构、执行原理、使用注意事项及案例分析。通过示例展示了如何根据用户输入的数字或字符串匹配不同的值班人员。同时提到了case合并的用法,以及在没有匹配项时执行default分支的情况。
摘要由CSDN通过智能技术生成

switch语句:

关于switch语句:

1.switch语句也是属于选择结构,也是分支结构。

2.switch语句的语法结构:

一个比较完整的switch语句应该这样编写,

   

switch(int或string类型的字面值或变量){
   case int或string类型的字面值或变量;
   
  java语句;
  ……
  break;
    case int或string字面值或变量;
  Java语句;
  ……
  break;
  ……
  default;
  java语句;
  ……
  }

3.switch语句执行原理:

switch后面小括号里面的数值与case后面的数值进行匹配,匹配成功分支执行。按照自上而下的顺序依次匹配。

4.匹配成功的分支执行,分支当中最后有“break”语句的话,整个switch语句终止。

5.匹配成功的分支执行,分支当中没有“break”语句的话,直接进入下一个分支执行(不进行匹配),这种现象被称为case穿透现象。【提供break语句可以避免穿透】

6.所有的分支都没有匹配成功,当有default的语句,会执行default分支当中的程序。

7.switch后面和case后面只能是int或者string类型的值,不能是其他。

当然byte,short,char也可以直接写到switch和case后面,因为它们可以进行自动类型转化。

byte,short,char可以自动转换成int类型。(jdk版本要在7以及以上)

8.case可以合并。

//接受用户的输入:
//查询星期几,谁值班

public class SwitchTest
{
	public static void main(String[] args){
		java.util.Scanner s=new java.util.Scanner(System.in);
		System.out.println("请输入数字:");
			int num = s.nextInt();
		switch(num){
			case 1:
				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;
			case 7:
				System.out.println("今天是gay值班");
			break;
			default:
				System.out.println("对不起,请重新输入");
		}
	}


}

case合并:

public class SwitchTest
{
	public static void main(String[] args){
		java.util.Scanner s=new java.util.Scanner(System.in);
		System.out.println("请输入数字:");
			int num = s.nextInt();
		switch(num){
			case 1:
				System.out.println("今天是小明值班");
			case 2:
				System.out.println("今天是小红值班");
			case 3:
				System.out.println("今天是老八值班");
			case 4:
				System.out.println("今天是新型值班");
			case 5:
				System.out.println("今天是奥里给值班");
			case 6:
				System.out.println("今天是钟离值班");
			case 7:
				System.out.println("今天是gay值班");
			default:
				System.out.println("对不起,请重新输入");
		}
	}


}
public class SwitchTest01
{
	public static void main(String[] args){
		java.util.Scanner s=new java.util.Scanner(System.in);
		System.out.println("请输入今天星期几:");
		String day=s.next();
		switch (day){
			case "星期一":
				System.out.println("今天是小明值班");
			break;
			case "星期二":
				System.out.println("今天是小红值班");
			break;
			case "星期三":
				System.out.println("今天是老八值班");
			break;
			case "星期四":
				System.out.println("今天是新型值班");
			break;
			case "星期五":
				System.out.println("今天是奥里给值班");
			break;
			case "星期六":
				System.out.println("今天是钟离值班");
			break;
			case "星期天":
				System.out.println("今天是gay值班");
			break;
			default:
				System.out.println("对不起,请重新输入");
		}
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值