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

关于本章的练习题

代码没有出现逻辑问题并且能够正常运行。但有几个问题:

  1. 当圆的半径输入为5的时候,圆的周长竟然会出现很多位小数,而输入其他的数字目前没发现问题。

  2. 如何设置保留的小数位数?比如:保留两位小数。

  3. 我将double类型全部换为float类型时,为什么在Circle类perimeter方法中return语句提示我"Type mismatch:cannot convert from double to float",难道说小数相乘的结果就是double类型吗?

  4. 想请教代码是否还有优化的空间?,如果可以请贴出优化以后的代码。我总觉得虽然能执行结果但写得啰嗦了一些。

感谢!

56e2621100011edf05000120.jpg

56e262130001173405000316.jpg

56e262130001b3ca05000320.jpg

56e262150001c81803850316.jpg

56e262150001ac5d05000375.jpg


正在回答

1 回答

这种提示Type mismatch:cannot convert from double to float就是说不能把double型的变成float的,像有数点这种情况默认都是double型的。

如果你想改成flaot型,你要记得把返回类型都改成float型才可以。

我觉得整体代码没有问题,你觉得啰嗦可能是因为main函数哪里写得太多了!那些半径什么的都要自己输入。

这个是我的代码,你看看对你有没有用,我也是自己琢磨了,因为retangle是正方形,所以我就只定义了一条边

56e2b46400011f8604680253.jpg

56e2b464000159e005000412.jpg

56e2b4650001462605000400.jpg

56e2b46600010d6904850492.jpg


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

MrAugus 提问者

万分感谢!原来小数点默认是double类型。前面加上(float)就是强制类型转换了吧?理解啦!不过还是有一点不清楚的是为什么在我输入圆的半径为5的时候,圆的周长竟然会出现那么多位小数。是公式写的不对吗?
2016-03-12 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第二季 升级版
  • 参与学习       530629    人
  • 解答问题       6091    个

课程升级!以终为始告别枯燥,在开发和重构中体会Java面向对象编程的奥妙

进入课程

关于本章的练习题

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