只要tset是boolean类型,那么if(test=true)和if(test==true)都可以运行,只不过运行的意义不一样。
if(test=true)这是在为test赋值,把test赋值为true,不管test原来的值是true还是false,都可以执行if里
面的代码,并且test的值变为true了,不再是原来的值。
if(test==true)这纯粹是把test与true对比,如果test原来的值为true,就可以执行if里面的代码,否则不
行,并且test的值不会改变。 还有=是赋值,而==则是比较。
第一种情况:boolean bool = falseif (bool) {System.out.println("Hello World")}//代码不会打印出Hello
Worldif (bool = true) { //这里bool 已经是trueSystem.out.println("Hello World")}//代码会打印出Hello
World
第二种情况:boolean bool = true这样的话结果就没有差别。
1.单分支if语法:
if(符合条件){
执行语句
}
登录后复制
符合条件——必要参数,表示最后返回的结果必须是一个布尔值。可以只是一个布尔值变量或者常量,也可以是使用关系或布尔运算符的表达式。
执行语句——可选参数。可以是一条或多条语句,当表达式的值为true时执行这些语句。
例:创建类,在主方法中定义变量english,并通过使用单分支if语句判断变量的值决定输出结果。
int english=70//声明、赋值
if(english>60){//判断english是否大于60
System.out.println("英语及格")//如果条件成立,则执行语句输出结果
}
登录后复制
2.双分支if(最常用的一种形式,能针对某种条件有选择地做出处理)
语法:
if(符合语句){
执行语句1
}
else{
执行语句2
}
登录后复制
例:创建类,在主方法中定义变量math,并通过使用双分支if语句判断变量的值决定输出结果。
int math=90//声明、赋值
if(math>60){//使用if语句判断条件
System.out.println("数学及格")//条件成立时,执行语句1输出结果
}else{
System.out.println("数学没有及格")//条件不成立时,执行语句2输出结果
}
登录后复制
3.多重条件if
——用于针对某一事件的多种情况进行处理。(通常表现为“如果符合条件1则执行条件1,否则如果符合条件2则执行条件2,以此类推”)
语法:
if(符合条件1){
执行语句1
}else if(符合条件2){
执行语句2
}
......
else(符合条件n){
执行语句n
}
登录后复制
符合条件1~符合条件n——必要参数。可以由多个表达式组成,但最后返回的结果必须为boolean类型。
执行语句——可以是一条或多条语句,当条件表达式1的值为true时,则执行语句1;当条件表达式2的值为true时,则执行语句2,以此类推。
例:创建类,在主方法中定义变量num,并通过使用多重条件if语句判断变量的值决定输出结果。
int num=20//声明、赋值
if (num>30){//判断变量x是否大于30
System.out.println("a的值大于30")//条件1成立时,执行语句1输出结果
}else if (x>15){//判断变量num是否大于15
System.out.println("a的值大于15,但小于30")//条件2成立时,执行语句2输出结果
}else if (x>0){//判断变量num是否大于0
System.out.println("a的值大于0,但小于15")//条件3成立时,执行语句3输出结果
}else{
System.out.println("a的值小于0")//当以上条件都不成立时,执行语句输出结果
}
登录后复制
4.嵌套条件结构
语法:
if(符合语句1){
if(符合语句2){
执行语句1
}
else{
执行语句2
}
}
else{
if(符合语句3){
执行语句3
}
else{
执行语句4
}
}
登录后复制