一、if---->相当于做判断题的语句。
int i = 0;
//我们要判断i的值是不是等于0
if(i == 0) {//如果i == 0的话,返回boolean类型,值为true,就走{}内 System.out.println("i的值确实为0!");}else{ //不为0,也就是false i = 0; //就把i的值赋值给0}System.out.println("i = " + i);
二、if、else if----> 相当于做选择题的语句。
String str = "A";
if("A".equals(str)){
System.out.println("恭喜,A是正确答案");
}else if("B".equals(str)){
System.out.println("B不是真确答案");
}else{
System.out.println("此题没有其它选项了");
}
二、switch----> 跟if else的区别。
switch用户支持short、byte、int、枚举、char
注意:从jdk7.0开始,switch添加了对String的支持
//使用switch编写简单的计算器
char a = '+';
switch(a){
case '+':
System.out.println(2+2);
break; //跳出switch
case '-':
System.out.println(2-2);
break;
default:
System.out.println("不支持此运算符!");
//break; 可有可无,因为后面没有判断了
}
switch的顺序是先执行case,最后执行default,我们也可以把default放上面,例如:
char a = '.';
switch(a){
default:
System.out.println("不支持此运算符!");
break;//如果此处不加break会继续下面的case判断,只到碰到break为止
case '+':
System.out.println(2+2);
break;
case '-':
System.out.println(2-2);
break;
}
switch另外一种格式:
int i = 2;
switch(i){
case 2:
case 3:
case 4:
case 5:
System.out.println("没错,2月-5月就是春天");
break;
default:
System.out.println("此程序只支持春天!");
}
if和switch的选择:
如果判断的具体数值不多,而是符合byte、short、int、char这四种类型。
虽然两个语句都可以使用,建议使用switch语句,因为效率稍高。
PS:
本人测试过1W跟100W数据,if明显高于switch,也可能是JDK7.0加入的新特性问题。
注意:对于区间判断,对结果为boolean类型的,if使用更广泛。
二、switch---->跟if else的区别。
while(boolean表达式){
//循环体
}
do{
//循环体
}while(boolean表达式);
区别:
do while不管条件满不满足,都会执行一次。。。