qq_TheFirebird_03629981
2016-07-21 15:32
布尔表达式? 表达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); } }
比较复杂的话 用if比较明朗 如果只是一个很小的判断 就用三目运算就好了
只能说写法不同吧,其实表达的意思一样,只是写法不同。个人理解。
Java入门第一季(IDEA工具)升级版
1165522 学习 · 17586 问题
相似问题