双if和if else的区别、if、switch case、编译器常量
文章目录
- 双if和if else的区别
- if else 是互斥的么
- 如何判断if是否执行
- switch case
- 报错 Constant expression required
- switch case支持那几种类型?
- switch case - string示例
双if和if else的区别
如下表:
- | 描述 | 场景
- | – | –
双if | 2个判断都会执行 | 不相干的2个判断
if else | 上一个判断不满足,执行下一个判断
有一个判断满足,不再执行后续判断 | 多个条件互斥的时候
if else 是互斥的么
其实应该分开来答。
语句之间是互斥的,如:
a不成立,判断b,b不成立,判断c,任意判断成立,不执行后续判断。
条件其实未必是互斥,例如:
intn=20;if(n<10){// 先判断n<10,不成立}else if(n<15){// 已经小于10了,肯定小于15啊 但是这个判断其实还会执行}else{}如何判断if是否执行
判断中加个s–即可,最后打印s的值判断if是否执行。
switch case
报错 Constant expression required
case的值必须是编译期常量。
switch case支持那几种类型?
1、基本类型 # int、char等,天生支持
2、String # java7后特别做的支持,Integer等类型不支持
3、枚举 # 天生支持
switch case - string示例
重点:String一定要加final,才会成为编译期敞亮。
publicfinalstaticStringA="A";publicfinalstaticStringB="B";publicstaticvoidmain(String[]args){Stringtype=B;switch(type){caseB:System.out.println("B");break;}}