A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

本帖最后由 陈培果 于 2014-5-11 11:35 编辑
  1. /*
  2. 练习:给定一个小数,保留该小数的后两位。
  3. */
  4. class MathTestDemo
  5. {
  6.         public static void main(String[] args)
  7.         {
  8.                 show(1.2345);
  9.                
  10.         }
  11.         public static double show(double d)
  12.         {
  13.                 double a =(int)(d*100);
  14.                         d=a/100;
  15.                         sop(d);
  16.                         return d;
  17.         }
  18.         public static void sop(Object obj)
  19.         {
  20.                 System.out.println(obj);
  21.         }
  22. }
  23. /*
  24. 这是毕老师出的小练习,以上是我写的小程序。
  25. 我感觉double a =(int)(d*100); 不够严谨,d太大的话就越界了

  26. 请师兄姐们帮我看看。如何修正是好?
  27. */
复制代码


5 个回复

倒序浏览
我还记得这个,当时我是用Math里的floor完成的,你参考一下
回复 使用道具 举报
lzhuas 发表于 2014-5-10 21:41
我还记得这个,当时我是用Math里的floor完成的,你参考一下

给个代码参考一下呗:lol
回复 使用道具 举报
这个我不直接告诉你.你自己去翻看一下 math类中得方法. 一定要养成自己查阅API的习惯,因为很多很多类是老师讲不到的,全考自己去翻阅API 这是个必须养成的习惯.我现在就是没事就 翻API看
回复 使用道具 举报
倪大大 发表于 2014-5-10 22:17
这个我不直接告诉你.你自己去翻看一下 math类中得方法. 一定要养成自己查阅API的习惯,因为很多很多类是老师 ...

给你个另外的方法吧 最简便的
DecimalFormat df = new DecimalFormat(".00");
.00就表示保留后两位数
然后df.format();就ok啦

注意导包
回复 使用道具 举报 1 0
倪大大 发表于 2014-5-10 22:17
这个我不直接告诉你.你自己去翻看一下 math类中得方法. 一定要养成自己查阅API的习惯,因为很多很多类是老师 ...

谢谢大神:P
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马