当前位置:
首页
文章
后端
详情

Java语言中的另一个选择语句 switch-case的详细用法

     相较于switch-case​语句,许多初学者知道的更多,或者说更熟悉的是编程语言中的​ if-else​条件选择语句。本篇文章将基于 java 语言为您详细介绍switch-case​的详细用法。

1、switch-case 的介绍

​switch-case​ 语句一般是由一个控制表达式​和多个​case​组成的。

switch-case 控制表达式支持的类型有 byte、short、char、int、String(Java 7)。

switch-case 语句完全可以和 if-else 语句进行互转,但通常来说,switch-case 语句的执行效率更高。

在 switch-case 语句中的 default 是在表达式找不到匹配的 case 时执行的。但是 default 并不是必须的。

一旦 case 匹配了,就会顺序执行后面的代码,而不管后面得 case 语句是否匹配,直到碰到第一个 break,则结束。


2、语法格式

switch(表达式){
    case 条件1:
        语句1;
        break;
    case 条件2:
        语句2;
        break;
    case 条件3:
        语句3;
        break;
    ...
    default:
        语句;    
}


3、具体代码使用

String str =  "C" ;
switch  (str) {
case  "A" :
     System.out.println( "A" );
     break ;
case  "B" :
     System.out.println( "B" );
     break ;
case  "C" :
     System.out.println( "C" );
     break ;
default :
     System.out.println( 0 );
}

打印结果:

微信截图_20210719094949


4、常见应用情况

(1)case 中两个值进行一样的操作


public String method(char variable){
	switch(grade)
	{
	 case 'A' :
		System.out.println("优秀"); 
		break;
	 case 'B' :
	 case 'C' :
		System.out.println("良好");
		break;
	 case 'D' :
		System.out.println("及格");
		break;
	 case 'F' :
		System.out.println("你需要再努力努力");
		break;
	 default :
		System.out.println("未知等级");
	}
}

(2)case 中没有 break 语句,从当匹配的 case 开始,后续所有的 case 的值陆续输出。

//传值为3
public String method(int variable){
	switch(i){
		case 9:
			System.out.println("9");
		case 3:
			System.out.println("3");
		case 6:
			System.out.println("6");
		default:
			System.out.println("def");
	}
}

打印结果:

3

6

def

(3)如果当前匹配的 case 没有 break 语句,则从当前的 case 开始,后续所有的 case 的值都会陆续输出。直到遇到第一个 break 语句,跳出判断。


//传值为3
public String method(int variable){
	switch(i){
		case 9:
			System.out.println("9");
		case 3:
			System.out.println("3");
		case 6:
			System.out.println("6");
			break;
		default:
			System.out.println("def");
	}

输出结果

3

6


5、总结

相较于​ if-else​语句来说,​switch-case​支持类型比较少,而且​case​是不能作为变量的。但是在项目开发中,如果业务需求比较多,这个是建议使用​switch-case​。一是后者比前者的执行效率要高,二是后者的逻辑比较清晰。

以上就是关于 Java中的switch-case语句的简单介绍以及详细使用方法的全部内容,如果想要了解更多关于 Java 相关的知识内容,请关注W3Cschool,如果对您的学习有所帮助,请多多支持我们!


免责申明:本站发布的内容(图片、视频和文字)以转载和分享为主,文章观点不代表本站立场,如涉及侵权请联系站长邮箱:xbc-online@qq.com进行反馈,一经查实,将立刻删除涉嫌侵权内容。

同类热门文章

深入了解C++中的new操作符:使用具体实例学习

C++中的new操作符是动态分配内存的主要手段之一。在程序运行时,我们可能需要动态地创建和销毁对象,而new就是为此提供了便利。但是,使用new也常常会引发一些问题,如内存泄漏、空指针等等。因此,本文将通过具体的示例,深入介绍C++中的new操作符,帮助读者更好地掌握其使用。


深入了解C++中的new操作符:使用具体实例学习

怎么用Java反射获取包下所有类? 详细代码实例操作

Java的反射机制就是在运行状态下,对于任何一个类,它能知道这个类的所有属性和方法;对于任何一个对象,都能调用这个对象的任意一个方法。本篇文章将通过具体的代码示例,展示如何通过Java反射来获取包下的所有类。


怎么用Java反射获取包下所有类? 详细代码实例操作

了解Java中的volati关键字的作用 以及具体使用方法

本篇文章将和大家分享一下Java当中的volatile关键字,下面将为各位小伙伴讲述volatile关键字的作用以及它的具体使用方法。


了解Java中的volati关键字的作用 以及具体使用方法

Java Map 所有的值转为String类型

可以使用 Java 8 中的 Map.replaceAll() 方法将所有的值转为 String 类型: 上面的代码会将 map 中所有的值都转为 String 类型。 HashMap 是 Java

Java Map 所有的值转为String类型

员工线上学习考试系统

有点播,直播,在线支付,三级分销等功能,可以对学员学习情况的监督监控,有源码,可二次开发。支持外网和局域网私有化部署,经过测试源码完整可用!1、视频点播:视频播放,图文资料,课件下载,章节试学,限时免

员工线上学习考试系统