qq_我知道了_0
2016-04-09 20:09
给float 类型的变量赋值为什么后面要加f?
float类型变量赋值的数值没有加f时,例如数字1.2,会把它作为double类型处理,也就是说吧double类型的值赋给float类型,然而由于float类型和double类型在内存中的二进制表现形式不同,java不会进行自动转换,两边类型不一样就不能赋值。 所以必须要加上f。
在不加f的情况下:
如果将除long型的整数类型(包括字符型)的常量表达式赋值给float型,系统自动将其转化成double型,编译不会出错,但精度丢失。
如果将其他类型数赋值给float型数,则编译出错。
因为默认的是double
float类型变量赋值的数值没有加f时,例如数字1.2,会把它作为double类型处理,也就是说吧double类型的值赋给float类型,然而由于float类型和double类型在内存中的二进制表现形式不同,java不会进行自动转换,两边类型不一样就不能赋值。 所以必须要加上f。
float类型赋值时没有加f,系统会默认为double类型
Java入门第二季 升级版
530642 学习 · 6091 问题
相似问题