编程练习float转为long丢失精度
// 将一个整型字面值67832赋值给char类型变量c
//并将c的值输出
char c =(char)67832;
System.out.println("c="+c);
//定义一个整型变量n,值为65
int n = 65;
//定义一个字符型变量c1,赋值为n,并输出c1的值
char c1=(char)n;
System.out.println("c1="+c1);
//定义一个长整型变量l,值为987654321
long l =987654321;
//定义一个整型变量i,赋值为l,并输出i的值
int i = (int)l;
System.out.println("i="+i);
//定义一个float类型变量f,将变量l的值赋值给f,并输出f的值
float f =(float)l;
System.out.println("f="+f);
//将float的值f,重新赋值给变量l,并输出l的值
l=f;
System.out.println("l="+l);
最后一个l=f是将float转换成long型,为啥会丢失精度呢?
Type mismatch: cannot convert from float to long
正在回答 回答被采纳积分+1
float转换成long需要强制转换,long类型转换为float默认会自动转换。
- 参与学习 人
- 提交作业 3802 份
- 解答问题 11489 个
本阶段带你迈入Java世界,学习Java必备基础知识,基础语法、面向对象思想以及常用工具类的使用。
了解课程
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星