ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

java中三元运算符详解

2021-10-08 13:01:45  阅读:177  来源: 互联网

标签:语句 java 双目 else 运算符 详解 返回值 三元


什么是三元运算符呢!

无疑其操作元有三个。第一个是表达式,剩余两个是值,条件表达式为真时,取第一个值,为假时,取第二个值。 

示例代码如下: 
boolean a = 20 < 45 ? true : false 

三元运算符的优先级高于赋值运算符,故第一个表达式为真,取第一个值,返回 a=true; 

三元运算符用于做判断,其等价的if-else语句如下: 
boolean a; 
if (20 < 45) { 
a = true; 
}

else{ 
a = false; 

很多时候三元运算符可以和if-else语句进行互换,它们两个可以等价的实现判断的效果,但是三元运算符和if-else还是有不同之处的,下面我们来具体谈谈不同之处: 

1、 两者之间对于返回值有不同的要求。三元运算符是必须要有返回值的要求,其运算后一定有一个返回值返回给开发人员使用,而if-else不一定有返回值,其执行结果可能是赋值语句或者是输出语句。 

2、两者的性能不同。三元运算符的运算性能高于if-else。

3、两者使用范围不同,在ireport的一些动态执行的情况下,只能用三元运算符而不能用if-else语句,当然在大多数情况下两者是可以等价互换的 。

4、两者的语言特性不同,三元运算符设计到一种双目运算符提升的特性, 
所谓双目数值提升,在双目运算符java的开发环境下可以简单的理解为类型转换的问题。 
1.如果定义了数据类型的变量和未定义数据类型的变量参与双目运算符的后双目运算,那么返回的结果就是范围大(精度高)的类型。 
2.如果两个定义了数据类型的变量参与双目运算符的后双目运算,那么返回的结果就是范围大(精度高)的类型。 
3.如果直接进行数值的比较,则自动转型为范围大(精度高)的类型。

参考原文:https://blog.csdn.net/qq_35868412/article/details/81083672

 

标签:语句,java,双目,else,运算符,详解,返回值,三元
来源: https://www.cnblogs.com/WenLJ-Blog/p/15379242.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有