可能重复:
什么是 Java ?: 运算符,它有什么作用?
在某些代码?
中,a 用于执行数学方程。
它是什么以及如何使用它?是否可以提供一个例子以及方程最终答案的原因?
int count = getChildCount();
int top = count > 0 ? getChildAt(0).getTop() : 0;
可能重复:
什么是 Java ?: 运算符,它有什么作用?
在某些代码?
中,a 用于执行数学方程。
它是什么以及如何使用它?是否可以提供一个例子以及方程最终答案的原因?
int count = getChildCount();
int top = count > 0 ? getChildAt(0).getTop() : 0;
基本上是三元运算符:
String mood = (isHappy == true)?"I'm Happy!":"I'm Sad!";
如果是快乐,那么“我很快乐!”。“我很伤心!” 除此以外。
我想你的意思是x = () ? y : z;
符号之类的东西?如果是这种情况,则括号内的表达式被评估为布尔值,true
x = y
否则x = z
int count = getChildCount();
int top = count > 0 ? getChildAt(0).getTop() : 0;
getChildAt(0).getTop()
表示如果count
变量大于 0,top 变量将包含 的值,否则将等于0
我的猜测是您指的是三元运算符,它的用法如下:
<some condition> ? <some value> : <some other value>;
例如:
int max = a > b ? a : b;
它是 an 的简写,if
相当于:
int max;
if (a > b) {
max = a;
} else {
max = b;
}
但允许代码中的单行结果。
如果使用得当,由于其简洁性,它可以使代码更加清晰。但是,如果行变得太长或太复杂,建议小心:代码只有在术语简短时才保持可读性。
?
求值表达式中的 称为三元运算符。它本质上是一个if() ... else
块的简写。
我假设您指的是三元运算符。它是某些 if 语句的简写。你在哪里做作业,比如:
int dozen = (bakersDozen) ? 13 : 12;
假设bakersDozen
为真,则为dozen
13。如果为假,则为 12。
int result = (a > b) ? 1 : 0;
是一样的
int result;
if (a > b)
result = 1;
else
result = 0;
? 通常是三元(或三元)运算符。所以让我们解释一下它在做什么。
myValue = (a = b) ? 1 : 0;
第一部分是你的条件。“a等于b吗?”
第二部分是真实的反应。
第三部分是虚假回应。
因此,如果 a 等于 b,myValue 将为 1。如果 a 不等于 b,myValue 将为 0。