Java基础361问第3问——switch和if的区别

java version “11.0.2” 2019-01-15 LTS
Java™ SE Runtime Environment 18.9 (build 11.0.2+9-LTS)
Java HotSpot™ 64-Bit Server VM 18.9 (build 11.0.2+9-LTS, mixed mode)

本次测试的Java版本是11.0.2

switch不可以进行逻辑判断,if可以进行逻辑判断

我们看下switch括号里面可以放入哪些类型的数据?

Incompatible types. Found: 'boolean', required: 'char, byte, short, int, Character, Byte, Short, Integer, String, or an enum

如果遇到如下的逻辑判断,switch就无法起作用了只能使用if:

if(A>B){} else{}

总结

if可以取代switch但是效率较低
switch适合对常量进行判断,无法对逻辑进行判断(赋值操作中含有逻辑判断是可以的比如 switch(a=1>2?1:2),但是switch(a>=1)这样就无法编译了)

你可能感兴趣的:(Java)