三目表达式是一个表达式,它最后只能有一种数据类型,当两个类型不一样时会自动向上转型,而if-else不受此限制。

看下面代码:

public class TrinocularTest {public static void main(String[] args) {System.out.println(transform(5.0));}static Number transform(double n){String tmp = n + "";String str;str = String.copyValueOf(tmp.toCharArray(),tmp.length()-2,2);//return str.equals(".0") ? (int)n : n;if(str.equals(".0")) {return (int)n;}else {return n;}}
}

运行的如下结果:

将if-else语句换为三目表达式时:

当我们把三目表达式替换为下边时,因为最大数据类型为int,所以输出结果为int。

return str.equals(".0") ? (int)n : (short)n;


简单修改代码传入5.5时:

三目表达式和if-else语句完全一样吗?相关推荐

  1. java三目表达式_Java8新特性Lambda表达式

    1 Lambda表达式 对于很多计算机语言来说,Lambda表达式并不是陌生的语法格式,而对于Java而言,它的到来比较晚,直到Java8更新之后,Lambda表达式才正式出现在Java语法中.所以如 ...

  2. Vue中绑定值与字符串拼接以及结合三目表达式实现是否为空判定的使用

    场景 若依前后端分离版手把手教你本地搭建环境并运行项目: 若依前后端分离版手把手教你本地搭建环境并运行项目_BADAO_LIUMANG_QIZHI的博客-CSDN博客_若依前后端分离搭建 Vue中在调 ...

  3. 三目表达式如何省略一个表达式

    三目表达式若想省略一个表达式, 可以用 null 代替 举例: public class HelloWorld {public static void main(String[] args) {// ...

  4. Vue使用v-for与v-if搭配满足条件进行赋值,和v-if三目表达式的使用

    Vue使用v-for遍历的时候,通过{{}}进行赋值 {{user.companyName = item.companyName}} <select class="form-contr ...

  5. Java 三目表达式中的NullPointerException问题

    Java 三目表达式中的NullPointerException问题 背景 问题 思考 找资料 反思 背景 旧系统改造. 问题 Integer rank = bpo.getLocalRank() != ...

  6. java里什么是三目表达式_浅谈Java三目运算

    三目条件运算公式为 x?y:z  其中x的运算结果为boolean类型,先计算x的值,若为true,则整个三目运算的结果为表达式y的值,否则整个运算结果为表达式z的值 例:String s=" ...

  7. java三目表达式_史上最强《Java 开发手册》泰山版王者归来

    简介:潜力修炼一年之久的<Java 开发手册(泰山版)>今天发布!此次共计新增 34 条规约,修改描述 90 处,其中错误码规则更是第一次提出完整的解决方案,大家参考错误码示例表,欢迎大家 ...

  8. Python 中的三元运算符,三目表达式

    三元运算符通常在Python里被称为条件表达式,这些表达式基于真(true)/假(false)的条件判断,在Python 2.4以上才有了三元操作. 下面是一个伪代码和例子: 伪代码: Python ...

  9. SQL server中的类似Java的三目表达式及游标使用

    运行环境:SQL server 2008R2 表达式:SELECT (CASE WHEN 1=1 THEN 'True' ELSE 'False' END) BEGINDECLARE @status ...

  10. 一个三目表达式,引起的空指针

    在开发用户系统,使用用户权限中角色类型中的get方法在数据拷贝中,一直报空指针: 在测试数据拷贝的时间,拷贝的时间一致报空指针,后面根据分析调试发现roleTypeKey数据返回在roleTypeKe ...

最新文章

  1. PLSQL DEVELOPER 使用技巧
  2. 10 在Spring Cloud中使用Hystrix
  3. html下拉列表框设置两个,怎么使用HTML option标签添加两个value
  4. java三层架构是不是策略模式,把「策略模式」应用到实际项目中
  5. 俄罗斯“指尖旋风”席卷南京
  6. 『设计模式』设计模式--模板方法模式
  7. 能将三次握手理解到这个深度,面试官拍案叫绝!
  8. Codeforces 977D: Divide by three, multiply by two(暴力)
  9. linux 自动化管理工具,linux环境下搭建自动化Jenkins管理工具
  10. 95-910-150-源码-FlinkSQL-Flink SQL 的元数据管理
  11. Tomcat学习总结(19)—— 为什么首选Tomcat作为JavaWeb应用服务器?
  12. Python接口自动化之Token详解及应用
  13. 在openGL中绘制图形
  14. paip.跨平台跨语言自定义加密方法
  15. 【JavaScript学习笔记】计算机编程基础
  16. Android 应用上线安卓市场
  17. 2017网易校招:不要二
  18. Android夜间模式原理
  19. vb.net 获取系统图标_「快捷指令」桌面图标任意摆放
  20. Word 2010 找不到 Endnote选项

热门文章

  1. 道德经和译文_道德经 - 道德经全文及译文 - 道德经全文 - 老子道德经
  2. 软件测试系统主要包括哪几项内容,系统测试包含哪几部分?
  3. 1079:计算分数加减表达式的值 题解 信息学奥赛 NOIP
  4. hive用源生函数实现根据身份证计算年龄
  5. HQChart实战教程6-自定义分时图
  6. 研究 -- 很多时候,就是证伪
  7. Cisco的路由器、交换机设置 Console 密码和 Enable 密码
  8. 无源晶振负载电容值CL匹配方法及说明
  9. Tobii Eye Tracker 4C 入门教程(一)
  10. 照片识别出错_8款文字识别工具,只要拍个照,文字马上可编辑