本文主要是介绍为何 short s1 = 1; 是对的,而 float f=3.4; 是错的?,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在Java中,没小数点的默认是
int
,有小数点的默认是double
编译器可以自动向上转型,如 int 转成 long 系统自动转换没有问题,因为后者精度更高 ;但如果是向下转型,就需要强制类型转换
short类型变量的初始化语句,只要不超过short范围( -215 ~ 215-1 )的就可以直接初始化,所以short s1 = 1;是对的;
而对于小数,默认情况下:float f=3.4;
中的小数3.4此时为double类型。此时,等式float f=3.4;
左边为float类型,等式右边为double类型,将涉及到强制类型转换,所以float f=3.4;
这个写法是错误的,
这篇关于为何 short s1 = 1; 是对的,而 float f=3.4; 是错的?的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!