Java中的所有浮点类型默认情况下都是double。不能将double类型的值赋给float类型的变量。即便该double类型的值处于float类型的范围内也是不可以的。总之,能否成功赋值取决于等号右边的值类型与等号左边的变量类型是否一致。
如何将double类型的值赋给float类型的变量?
答案是:(1)强制类型转换,将double类型的值强制转换为float类型。(2)使用java预言的支持。强制类型转换的语法: 类型 变量名 = (类型)变量值;
变量在使用前必须要赋值:变量必须要声明其类型方可使用;变量在使用前必须要定义,并且只能定义一次。
以下代码无法通过编译:
int a = 1; short b = a;
a 是int类型,b是short类型,int类型表示的数据范围要比short类型大,不能将表示范围大的值赋给表示范围小的变量。
总结:可以将表示范围小的值赋给表示范围大的变量,但不能直接将表示范围大的值赋给表示范小的变量,只能通过强制类型转换实现。