java怎么将FLOAT类型转化为STRING?
Float f = 0.0f;
String str = String.valueOf(f);
String str1 = f + "";
String str2 = f.toString();
System.out.println(str);
System.out.println(str1);
System.out.println(str2);
这几种方法都是可以的。
int 和float的区别?
int和float区别:
int:是一种数据类型,在编程语言(C、C++、C#、Java等)中,是用于定义整数类型变量的标识符。
float:于存储单精度浮点数或双精度浮点数。
int:int占用4字节,32比特,数据范围为-2147483648~2147483647[-2^31~2^31-1]。
float:loat 类型提供了一个在 -3.4E+38 ~ 3.4E+38 之间的.范围。
int:除了int类型之外,还有short、long、long long类型可以表示整数。
在之前的微型机中,int占用2字节,16比特,数据范围为-32768~32767[-2^15~2^15-1]
float:可以提升为更大基数的类型(从 float 类型到 double 类型)。对浮点变量执行算术时,通常会出现提升。此算术始终以与具有最高精度的变量一样高的精度执行。
由于尾数的高顺序位始终为 1,因此它不是以数字形式存储的。此表示形式为 float 类型提供了一个大约在 -3.4E+38 ~ 3.4E+38 之间的范围。
long可以自动转换成float吗?
可以
直接用(float)a转换,只是精度会有下降,在32位系统中float有1个符号位+8个2的幂次位+23个精度位=32位,long有1个符号位+31个精度位=32位,有效数字会有损失。
float类型呢?4个字节,32位,第1位是符号位(数符),即S,接下来的8位是指数域(阶码),即E,最后的23位,是小数域(尾数),即M。对于一个十进制数112.5,我们用科学计数法表示就是1.125*10^2,所以呢,对于一个二进制数,我们的表示就应该是1.XXX* 2^X,由于第一位永远都是1所以直接省去,因此表示为S.M*2^E。所以float的取值范围是-2^128到2^128,远远大于long的最大值。
所以java中long类型自动转换为float类型。

