Java中数据类型转换

float和double类型转换的问题

运行输出:

让float转double能得到实际的数据?  
解决办法:现将float型转换为字符串型,再转换为精度更高的BigDecimal型,再将其转换为double型。

float f = 5.6;
//5.6默认是一个double类型。需要强制转换
//float f = (float) 5.6;

表达式类型的自动提升
表达式的类型将严格保持和表达式右边最高等级操作数相同的类型
short sValue = 5;
sValue = sValue -2;
//表达式中的sValue将自动提升到int类型,则右边的表达式类型为int
int val = 3;
int intResult = 23 / val;
System.out.println(intResult);//输出7,23/3不能除尽但依然得到的int类型的整数。


原文地址:https://www.cnblogs.com/eggtomcato/p/11076688.html