if ; else if; else; 判断操作:
格式示例:
public class scanner {
public static void main(String[] args){
int a = 3;
int b = 23; if (a ==1){
System.out.println(a);
}
else if(b ==2){
System.out.println(b);
}
else {
System.out.println(a+b);
} }
}
三元表达式和if语句的差别:
区别:
三元运算符实现的,都可以采用if语句实现。反之不成立。
什么时候if语句实现不能用三元改进呢?
当if语句控制的操作是一个输出语句的时候就不能。
为什么呢?因为三元运算符是一个运算符,运算符操作完毕就应该有一个结果,而不是一个输出。
Switch语句:
格式及解释:
switch语句格式:
switch(表达式) {
case 值1:
语句体1;
break;
case 值2:
语句体2;
break;
...
default:
语句体n+1;
break;
} 格式的解释:
switch:表示这是switch选择结构
表达式:这个地方的取值是有限定的
byte,short,int,char
JDK5以后可以是枚举
JDK7以后可以是字符串
case:后面跟的是要和表达式进行比较的值
语句体:要执行的代码
break:表示中断,结束的意思,可以控制switch语句的结束。
default:当所有的值都和表达式不匹配的时候,就执行default控制的语句。其实它就相当于if语句的else。
示例:
class SwitchDemo {
public static void main(String[] args) {
//创建键盘录入对象
Scanner sc = new Scanner(System.in); //控制键盘录入数据
System.out.println("请输入一个数据(1-7):");
int week = sc.nextInt(); //3 //switch判断语句
switch(week) {
case 1:
System.out.println("星期一");
break;
case 2:
System.out.println("星期二");
break;
case 3:
System.out.println("星期三");
break;
case 4:
System.out.println("星期四");
break;
case 5:
System.out.println("星期五");
break;
case 6:
System.out.println("星期六");
break;
case 7:
System.out.println("星期日");
break;
default:
System.out.println("你输入的数据有误");
break;
}
}
}
需要注意的地方:
break省略容易发生穿透现象:
case 3:
System.out.println("星期三"); case 4:
System.out.println("星期四");
break;
//这种就是穿透,当3进行匹配完毕,打印星期三,然后打印星期四,case 4匹配不生效。
case后面只能是常量,不能是变量,而且,多个case后面的值不能出现相同的
default一般放在末尾的位置。
if和switch的区别:
if使用的场景:
1.针对结果是boolean类型的判断
2.针对一个范围的判断
3.针对几个常量值的判断
switch语句:
针对几个常量值的判断