详述Java中switch分支语句

详述Java中switch分支语句

 

 switch中数据变量类型:int  byte  short  char  string  枚举,不能用double float 和 boolean

 

1、 switch语句语法:

public class SwitchTest {
	public static void main(String[] args) {
		int i=1;
		switch(i){
			case 1 :
				System.out.println("代码1");
			case 2 :
				System.out.println("代码2");
			default :
				System.out.println("代码3");
		}
		System.out.println("代码4");
	}
}

运行结果:

代码1
代码2
代码3
代码4

2、 注意:

1.默认情况下,switch会从条件成立处开始执行,直到switch结束。(无break、return)

2.case后面一般不加大括号。不会只执行一条语句。

3.break用于结束其所在当前switch语句块程序的运行,但不会影响其所在语句块外部代码的执行。(必须用于循环或switch)

4.continue必须用于循环。

5.return作用:①用于结束当前所在方法(函数)。
                       ②返回某一数值。

public class ReturnTest {
	
	static void show(){
		System.out.println("show方法");
		return;
	}
	public static void main(String[] args) {
		show();
		System.out.println("main方法");
	}
}

运行结果:

show方法
main方法

6.在一定会被执行的 return 语句后,写的语句为 不可达语句,
程序自动检测这种语句,永远不会被执行到,报错,代码如下:

public class SwitchTest {
	public static void main(String[] args) {
		int i = 1;
		switch (i) {
			case 1:
				System.out.println("代码1");
			case 2:
				System.out.println("代码2");
			default:
				return;
		}
		System.out.println("代码4");	
	}
}

 因为case1后增加了break语句,所以 “代码4”有被执行的可能,程序不报错,代码如下:

public class SwitchTest {
	public static void main(String[] args) {
		int i = 1;
		switch (i) {
			case 1:
				System.out.println("代码1");
				break;
			case 2:
				System.out.println("代码2");
			default:
				return;
		}
		System.out.println("代码4");	
	}
}

运行结果:

代码1
代码4

7.代码块里面不能有return(例如static),否则将报错,代码如下:

public class ReturnTest {
	
	static{
		System.out.println("show方法");
		return;
	}
	
	public static void main(String[] args) {
		System.out.println("main方法");
	}
}

8.switch和if比较:
①switch性能更高,能用switch一定要用switch。
②具体值用switch,否则用if(1.如果case后的是个范围,则只能用if 

                                                2.如果shujvbianliangl是double,long,boolean等switch不能使用的数据类型时,只能用if)
                   
                   

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值