这是一个有点新的问题,希望你们不介意,并且可以向我解释。
这个函数调用:
System.out.println(doStuff(a)?"YES":"NO");
我之前从未使用过这种符号,"是什么?"意味着在这个功能? 它是对bool函数的调用,我猜每当它返回false时它就会打印" NO"当真正打印" YES" ? 我有点习惯这种写em的方式
if(doStuff(a)==true) {
System.out.println("YES");
}
有人可以指点我的资源,我可以阅读更多有关这种布尔函数调用的替代方法吗?我还没有找到任何东西。
答案 0 :(得分:1)
这是条件表达式:
boolCondition ? "YES" : "NO"
当条件(可能是任何boolean
表达式)用于在两个相同类型的值之间进行选择时,它会起作用。类型限制至关重要:冒号:
的两边必须生成相同类型的对象或值。
在您的情况下,控制条件的表达式是调用返回boolean
的方法,该方法控制两个类型为String
的对象之间的选择。
这是一个条件语句:
if (boolCondition) {
... // Statements A
} else {
... // Statements B
}
语句与表达式没有相同的限制,因为条件控制的两个可执行语句块可以完全不相关。
答案 1 :(得分:0)
是三元运算符。 sintax是条件? <真实评价&gt; :错误评估
1==1 ? "True" : "false"