条件语法跟条件运算有啥区别吗?
布尔表达式? 表达1 表达2
跟if......else有啥区别吗?感觉作用相同呀
布尔表达式? 表达1 表达2
跟if......else有啥区别吗?感觉作用相同呀
有区别的。
“布尔表达式?表达1:表达2”一个三目运算符,"表达式1"和“表达式2”中的两个表达式可以为一个具体的数值,也可以为表达式,且表达式不能以分号结尾,而“if...else...”的大括号里面包含的为代码段。
“布尔表达式?表达1:表达2”是有运算结果返回的,而“if...else...”的大括号里面为代码段,无返回值。
“if...else...”可以完全替代“布尔表达式?表达1:表达2”的效果,反之不行。采用三目运算符可以使代码更加简洁。
import java.io.*; import java.util.*; class test { public static void main (String[] args) throws java.lang.Exception { int score=59; //采用三目运算符 String result1; result1 = (score>=60 ? "及格" : "不"+"及格"); //采用if...else...分支语句 String result2; if(score>=60){ result2="及格"; } else{ result2="不及格"; } System.out.println(result1); System.out.println(result2); } }
举报