条件表达式的优先级高于赋值运算,但低于所有关系运算、逻辑运算和算术运算 。其结合性是自右向左结合,当多个条件表达式嵌套使用时,每个后续的":"总与前面最近的、没有配对的"?"相联系 。例如在条件表达式"a0
?
a/b:a0
?
a+b:a-b"中,出现两个条件表达式的嵌套,求解这个表达式时先计算后面一个条件表达式"a0
?
a+b:a-b"的值,然后再与前面的"a0
?
a/b:"组合 。
使用条件表达式可以使程序简洁明了 。例如,赋值语句"z=(ab)?a:b
"中使用了条件表达式,很简洁地表示了判断变量a与b的最大值并赋给变量z的功能 。所以,使用条件表达式可以简化程序
例3-8:定义高等数学中常用的符号函数sign的数学定义如下 。
.
对应的C函数定义如下:
/*
L3_8.C
*/
double
sign(double
x)
{
return
x0
?
1:(x==0
?
0:-1);
}
条件运算符是什么?条件运算符,是一个程序开发的术语,优先级高于赋值、逗号运算符,低于其他运算符,适用于程序开发 。
例如:条件语句:如果(ab)Max=a;elseMax=b;条件表达式可以写成:Max=(ab)?A:b,执行此语句的语义是:如果ab为真,则将源a赋给Max,否则将b赋给Max 。
注意事项
1、条件运算符的优先级低于关系运算符和算术运算符,高于赋值运算符 。
2、JAVA中条件运算表达式中的关系表达式值的类型必须为布尔类型,只能是true或false 。
3、结合性也是右结合性 。
4、与C语言不同的是,JAVA中条件表达式的值必须参与运算 。
秒懂生活扩展阅读
- 火焰山是怎么形成的什么写 火焰山是怎么形成的
- 天王送子图的作者是谁 天王送子图
- 信达雅的翻译标准得到了人们的认可 信达雅
- 白沙鱼是哪里的鱼
- 历史名人勤奋学习的故事别太常见
- 牛杂是什么呀
- 带箭图的成语有哪些
- 什么样的疑问句中可用some
- 历史的优美语录
- 求几部可以媲美武极天下的小说