Java关于三目运算符运算顺序

weixin_43163172 2019-03-23 09:46:04

这是判断四个数中最大值的代码
有个疑问,关于三目运算符的运算顺序,是从最外层的arr[0]>arr[1]开始还是从最里层的arr[0]>arr[3]开始呢?
小括号对其有什么影响


int max = arr[0]>arr[1]?(arr[0]>arr[2]?(arr[0]>arr[3]?arr[0]:arr[3]):(arr[2]>arr[3]?arr[2]:arr[3])):(arr[1]>arr[2]?(arr[1]>arr[3]?arr[1]:arr[3]):(arr[2]>arr[3]?arr[2]:arr[3]));
...全文
440 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
流泪熊猫头 2019-03-23
  • 打赏
  • 举报
回复
先从?前面开始,三目运算符本来就是先判断?前面的条件的真假,再决定执行:前的还是后面的
刘蕘 2019-03-23
  • 打赏
  • 举报
回复
先算?前面的,括号只是表示同等情况下的优先级,不会提高优先级
早起晚睡 2019-03-23
  • 打赏
  • 举报
回复
有括号先算括号里面的 从最里面的括号起
大白菜哇 2019-03-23
  • 打赏
  • 举报
回复
有小括号先算小括号里的,从里到外,三目运算符是从左到右,如果第一个关系成立那么就选择第一个数,否则选第二个数

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧