java条件运算符的执行规则有哪些内容组成方法(Java条件运算符的执行规则)

概述

条件运算符是三目运算符,也称为三元运算符,由?和:组成,用来根据给定条件的真假分别返回不同的值。在Java中,条件运算符的执行规则有三个方面:操作数类型的兼容性、返回值类型的自动类型提升和条件表达式的求值顺序。

操作数类型的兼容性

条件运算符要求基本数据类型和包装器类型的操作数兼容。如果条件表达式的类型为boolean,则第二个操作数和第三个操作数必须兼容。如果条件表达式的类型为数值类型,则第二个和第三个操作数也必须兼容,而且兼容的规则如下:

java条件运算符的执行规则有哪些内容组成方法(Java条件运算符的执行规则)

  • 如果两个操作数类型相同,则结果类型为该类型。
  • 如果其中一个操作数为数字字面量,则将该操作数转换为另一个操作数的类型。
  • 如果一个操作数为int类型,另一个操作数为浮点型,则将int类型的操作数强制转换为浮点型。
  • 如果一个操作数为long类型,另一个操作数为float或double类型,则将long类型的操作数强制转换为float或double类型。

返回值类型的自动类型提升

条件运算符可以用于不同类型的值,但其返回值类型只能是同种类型。如果条件表达式的类型与第二个操作数和第三个操作数的类型不同,则会发生自动类型提升。Java在执行条件运算符时,会比较这三个操作数类型的级别,然后选择最高级别的类型作为返回值类型。其规则如下:

  • 如果两个操作数的类型相同,则返回值类型与其相同。
  • 如果一个操作数是byte、short或char,另一个操作数是int类型,则返回值类型为int。
  • 如果一个操作数是long类型,另一个操作数是int类型,则返回值类型为long。
  • 如果一个操作数是float类型,另一个操作数是double类型,则返回值类型为double。

条件表达式的求值顺序

条件运算符的求值顺序是从左到右。首先对条件表达式进行求值,结果为true时,返回第二个操作数的值,结果为false时,返回第三个操作数的值。而且,它是右结合的,也就是说,如果有多个条件表达式嵌套在一起,先计算最内层的表达式,再依次向外计算。

本文来自投稿,不代表亲测学习网立场,如若转载,请注明出处:https://www.qince.net/javad7djava.html

郑重声明:

本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,不存在任何商业目的与商业用途。 若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。

我们不承担任何技术及版权问题,且不对任何资源负法律责任。

如遇到资源无法下载,请点击这里失效报错。失效报错提交后记得查看你的留言信息,24小时之内反馈信息。

如有侵犯您的版权,请给我们私信,我们会尽快处理,并诚恳的向你道歉!

(0)
上一篇 2023年4月24日 下午11:35
下一篇 2023年4月24日 下午11:35

猜你喜欢