Float.parseFloat(String num) 接受参数为string,所以必须先转换long为string
public static void main(String[] args) {
long num = 10000000000000L;
float f1 = (float) num;
float f = Float.parseFloat(String.valueOf(num));
System.out.println(f1);
System.out.println(f);
}
long转换为float可能会发生精度丢失的。
强制转换就可以
long a = 10;
float b = a;
Float.parseFloat 是把string类型的转换成float ,传入的参数需要是String类型的
String c = "123";
float d = loat.parseFloat(c);
强转啊
如果不想强转的话,还比较啰嗦,看下api 就能发现有2个方法可以使用:如下所示
public static void main(String args []){
long i =1200L;
System.out.println(new Long(i).floatValue());
//用i构造一个Long对象,再以 float 形式返回此 Long 的值
System.out.println(Long.valueOf(i).floatValue());
//Long的静态方法取得Long对象,再以 float 形式返回此 Long 的值
}
float fun(long l)
{
return (float)(l);
}
//用不着可一个空间霍霍,那么多地方呢,
long i = 2000;
float j = (float) i;