概述
float 与 double
Java 不能隐式执行向下转型,因为这会使得精度降低。
4.5字面量属于 double 类型,不能直接将 4.5 直接赋值给 float 变量,因为这是向下转型。
float f = 4.5; //错误写法
4.5f 字面量才是 float 类型。
float f = 4.5f; //正确写法
float f = 4.5f;
double d1 = 456.456;
double d2 = f; //低精度向高精度
f = (float) d1; //高精度向低精度进行了向下转型
隐式类型转换
因为字面量 2 是 int 类型,它比 short 类型精度要高,因此不能隐式地将 int 类型向下转型为 short 类型。
short s = 2;
//s = 1+s; //idea会提示你进行强制转换
但是使用 += 或者 ++ 运算符会执行隐式类型转换。
s += 1;
s++;
//非隐式转换
s = (short) (1+s); //需要进行强制转换
最后
以上就是细心棒球为你收集整理的运算(float与double、隐式类型转换)的全部内容,希望文章能够帮你解决运算(float与double、隐式类型转换)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复