黑马程序员技术交流社区

标题: Math练习。。。 [打印本页]

作者: 張帅    时间: 2013-10-10 13:40
标题: Math练习。。。
如何将给定的一个小数保留到小数的后两位?求程序.....

作者: To    时间: 2013-10-10 13:55
楼主以后可以去26,27版块发帖。奖励丰厚。24,25已经开班,在这里发帖没有加分的哦
作者: ixiangfeng    时间: 2013-10-10 14:08
  1. import java.math.*;
  2. public class Format
  3. {
  4. public static void main(String [] args)
  5. {
  6. Format1 fm = new Format1();//创建对象
  7. fm.format1(1.2365);//调用对象的转换方法
  8. }
  9. }


  10. class Format1
  11. {
  12. public void format1(double d)
  13. {
  14. BigDecimal bg = new BigDecimal(d);//创建BigDecimal对象,建议使用string参数来调用其构造器
  15. double d1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();//.ROUND_HALF_UP遇.5往上近似
  16. System.out.println(d1);
  17. }
  18. }
复制代码

作者: 赖龙威    时间: 2013-10-10 19:05
  1. import java.util.Scanner;


  2. public class FloorDemo {
  3.         public static void main(String[] args) {
  4.                 Scanner scanner = new Scanner(System.in);
  5.                 double d = scanner.nextDouble();
  6.                 scanner.close();
  7.                 String string = String.valueOf(d);
  8.                 int index = string.indexOf('.');
  9.                 String subString = string.substring(0, index + 3);
  10.                 int x = Integer.parseInt(string.substring(index + 3, index + 4));
  11.                 System.out.println(Double.parseDouble(subString));
  12.         }
  13. }
复制代码
思路是:讲double转变成String,然后取有效位,再把String转换成double




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2