码迷,mamicode.com
首页 > 其他好文 > 详细

基本数据类型之间的运算

时间:2020-01-12 11:30:29      阅读:79      评论:0      收藏:0      [点我收藏+]

标签:int   spl   position   强制类型转换   byte   col   自动转换   abs   计算   

基本数据类型之间的运算

相同数据类型之间
相同数据类型之间计算, 得到的一定是这个数据类型
 
int + int = int
 
不同数据类型之间
首先, 把小的数据类型自动转换成大的数据类型, 然后再进行计算, 得到的结果一定是大的数据类型.
int + long = long
 
特殊的byte, short, char
在计算的时候,首先会转化成int类型然后再进行计算. 这样是安全的.
 
byte + byte = int
结果至少是int
 
结论:
在执行算数运算的时候. byte, short 会自动的转化成int然后再进行计算.
如果不同数据类型之间进行计算. 比如int+long. 此时, 程序会自动的把int转化成long. 然后再进行计算. 所以结果一定是大的数据类型
 
恶心人的题:
 short s1 = 1;
 short s2 = s1 + 1;  
 System.out.println(s2);
解析: 此时第2行代码一定会报错. 因为s1是short类型. 而short类型计算的时候会自动转换成int进行计算. 并且. 所有的数字. 默认都可以看做是int类型. 默认的小数都可以看做是double类型. 所以第二行计算的结果应该是int类型. 把int类型的数据赋值给short类型的变量. 一定会报错的. 此处必须要进行强制类型转换
short s1 = 1;
short s2 = (short) (s1 + 1);
System.out.println(s2);

 

基本数据类型之间的运算

标签:int   spl   position   强制类型转换   byte   col   自动转换   abs   计算   

原文地址:https://www.cnblogs.com/wenyule/p/12182062.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!