为了账号安全,请及时绑定邮箱和手机立即绑定

为什么写成String str1 = Float.toString(m);就不行呢?

为什么写成String str1 = Float.toString(m);就不行呢?float也有一个包装类Float啊,m的值78.5应该也可以是float数据类型吧?

正在回答

7 回答

前面的m用的是double双精度,使用float类型需要进行类型转换,不然会造成精度丢失,楼主这么写也可以,但前面需要先将m转化成float类型,因为编译不会自动帮你把double类型的m转换成float类型

0 回复 有任何疑惑可以回复我~

这个toString前面的对应的包装类类型对应的是变量定义时的是什么包装类型,就那这道题来说,题目上定义m时用的double所以对应就要用Double.toString(m);如果题目是用float定义m的话,就可以用Float.toString(m);

0 回复 有任何疑惑可以回复我~

Float str1=new Float("16").toString()

0 回复 有任何疑惑可以回复我~

题目中是定义double m=78.5 是double类型

把这个改成float应该就是了


0 回复 有任何疑惑可以回复我~

说的对啊,你上一句代码 是用Float定义的m吗,不定义一下怎么用Float的包装类呢

0 回复 有任何疑惑可以回复我~

那你用float定义m啊!

1 回复 有任何疑惑可以回复我~
Float m=new Float(78.5);
String str1 = m.toString();
System.out.println(str1);

这样调用的话是可以的,调用方法时要用 对象 . 方法,而不是 类 . 方法(静态方法除外)

1 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么写成String str1 = Float.toString(m);就不行呢?

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信