嗨请有人能解释一下这个条件陈述的含义吗?这是一个java代码。
(chaIntVal >= 0x10 ? chaIntVal : chaIntVal | 0x60)
答案 0 :(得分:2)
这意味着:
int res;
if(chaIntVal >= 0x10) {
res = chaIntVal;
} else {
res = chaIntVal | 0x60; // binary or
}
答案 1 :(得分:1)
这是一个ternary operator,意思是这个。
condition ? value_if_true : value_if_false;
几乎相当于
if(condition){
// when true do this
}else{
// when false do this
}
答案 2 :(得分:1)
如果chaIntVal>该表达式返回chaIntVal。 16;否则它会将chaIntVal的第5位和第6位设置为1(二进制OR http://www.xcprod.com/titan/XCSB-DOC/binary_or.html)并返回它。
答案 3 :(得分:0)
如果未设置值的4个低位之后的高位(值范围为0-15),请设置位x11x xxxx。