Java条件表达式结果类型的规则
来源:互联网 发布:淘宝卖家流程图 编辑:程序博客网 时间:2024/04/29 09:34
条件表达式结果类型转换规则:
System.out.println(false ? 1.0 : 1);
输出: 1.0
不应该输出成: 1
System.out.println( false ? 1 : 'a');
输出: a
System.out.println( false ? 1.0 : 'a');
输出: 97.0
什么表达中1变成1.0,就会输出'a'呢?
System.out.println( true ? 98 : 'a');
输出: b
同上
System.out.println( true ? 98.0 : 'a');
输出:98.0
同上
Java条件表达式,注意以下几点:
1、如果冒号两边,是同一种类型,那么该条件表达式的值也是同一种类型。
2、如果其中一边的类型是byte、short或者char(暂且统称为X类型),而且另外一边是int常量(注意是常量),而且这个常量可以用X类型表示(也就是不溢出),那么,结果就是X类型。比如:
System.out.println( true ? 98 : 'a'); 输出: b
3、如果不符合上述情况的,则自动隐式转换,即小范围的转换成大范围的,低精度的转换成高精度的类型,最后的结果就是转换后的类型。比如:
System.out.println( false ? 1.0 : 'a'); 输出: 97.0
-----------------------------------------------------------http://blog.csdn.net/jimmy_lee1106/article/details/30038367----------------------------------------------
- Java条件表达式结果类型的规则
- Java条件表达式结果类型的规则
- 【java解惑】条件表达式结果类型规则
- Java 条件表达式结果类型不一致问题
- C++易错:(五)条件表达式的计算结果类型
- 条件表达式的类型
- 条件表达式规则
- switch语句的条件表达式类型
- JAVA表达式的转型规则
- java正则表达式的规则
- JAVA表达式的转型规则
- Java基础篇笔记(二) ---容易忽视的表达式结果的类型,求概率、几率问题
- c# 三元表达式 无法确定条件表达式的类型
- 话题13 --鞭辟入里 条件表达式的类型深入
- Java逻辑表达式的结果研究
- java表达式的字符串运算出结果
- java标识符类型的命名规则
- Java的表达式类型提升
- Oracle 物化视图之--复杂物化视图创建
- TCP拥塞控制
- js技术基础
- MySQL中TIMESTAMPDIFF和TIMESTAMPADD函数的用法
- HTML5--解决浏览器不支持问题
- Java条件表达式结果类型的规则
- Android——高德地图实现多点连线与点击定位监听实现
- 源码解读Spring IOC原理
- Jzzhu and Cities( cf450D) 最短路
- Python基础3(内置标准函数的使用一)
- 本地SQL检索方式
- 看了田渊栋的《数学的用处》四篇有感
- js技术基础
- 使用Eclipse构建Maven的SpringMVC项目