Java技术_Java千百问(0018)_switch如何使用
2016-04-02 10:16
567 查看
点击进入_更多_Java千百问
switch语句和if else语句类似,switch能够实现的功能if else完全可以实现,区别在于使用switch逻辑更为清晰。if else详情看这里:if else如何使用
语法:
1、在switch语句中使用的expression只能是一个字节,short,int和或char,enum本身为int,所以也可以使用。
2、switch可以有任何数量的case语句。每个case后面是进行比较的值和":"。
3、case后面的值与expression类型必须相同,必须是一个常量。
4、当case后面的值与expression等于,则执行case对应的代码段,直到break语句为止。
5、直行到break语句,直接跳出switch,执行后续代码。
6、不是每一个case都要有break。如果没有break,则会继续执行下一个case对应的代码段,直到break为止。break关键字详解看这里:break与contine分别如何使用
7、switch语句可以有一个默认case,它必须出现在所有case之后。默认情况下,没有case是true时,执行default对应代码段。
例子:
编译并运行上面使用各种命令行参数的程序。这将产生以下结果:
Well done
Your grade is a B
点击进入ooppookid的博客
switch如何使用
switch允比对一个变量的值,来执行不同情况的代码。switch语句和if else语句类似,switch能够实现的功能if else完全可以实现,区别在于使用switch逻辑更为清晰。if else详情看这里:if else如何使用
语法:
switch(expression){ case value : //Statements break; //optional case value : //Statements break; //optional //You can have any number of case statements. default : //Optional //Statements }以下规则适用于switch语句:
1、在switch语句中使用的expression只能是一个字节,short,int和或char,enum本身为int,所以也可以使用。
2、switch可以有任何数量的case语句。每个case后面是进行比较的值和":"。
3、case后面的值与expression类型必须相同,必须是一个常量。
4、当case后面的值与expression等于,则执行case对应的代码段,直到break语句为止。
5、直行到break语句,直接跳出switch,执行后续代码。
6、不是每一个case都要有break。如果没有break,则会继续执行下一个case对应的代码段,直到break为止。break关键字详解看这里:break与contine分别如何使用
7、switch语句可以有一个默认case,它必须出现在所有case之后。默认情况下,没有case是true时,执行default对应代码段。
例子:
public class Test { public static void main(String args[]){ //char grade = args[0].charAt(0); char grade = 'B'; switch(grade) { case 'A' : System.out.println("Excellent!"); break; case 'B' : case 'C' : System.out.println("Well done"); break; case 'D' : System.out.println("You passed"); case 'F' : System.out.println("Better try again"); break; default : System.out.println("Invalid grade"); } System.out.println("Your grade is " + grade); } }
编译并运行上面使用各种命令行参数的程序。这将产生以下结果:
Well done
Your grade is a B
点击进入ooppookid的博客
相关文章推荐
- java动态代理实现原理
- 一个简单的java缓存实现
- 如何设置eclipse的代码补全
- java多线程学习笔记:使用Callable和Future
- java缓存基本原理
- spring常用的工具类
- Java垃圾回收机制
- 【java】向上转型和向下转型
- struts2请求跳转到外部链接
- SpringMvc项目分析
- eclipse如何修改dynamic web module version
- springMVC整合xStream
- springMVC4(5)RestTemplate控制层单元测试
- java基础知识点总结(三)
- Javase之字符串
- 事件处理(Java核心技术卷Ⅰ)
- java虚拟机 jvm 出入java栈 栈空间内存分配
- java虚拟机 jvm 出入java栈 栈空间内存分配
- 20145304 第五周Java学习报告
- 一天一个Java基础——反射