zoukankan      html  css  js  c++  java
  • BigDecimal的用法详解(保留两位小数,四舍五入,数字格式化,科学计数法转数字,数字里的逗号处理)

    一、简介

        Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数。在实际应用中,需要对更大或者更小的数进行运算和处理。float和double只能用来做科学计算或者是工程计算,在商业计算中要用java.math.BigDecimal。BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。构造器是类的特殊方法,专门用来创建对象,特别是带有参数的对象。

    二、构造器描述

    BigDecimal(int)       创建一个具有参数所指定整数值的对象。
    BigDecimal(double) 创建一个具有参数所指定双精度值的对象。
    BigDecimal(long)    创建一个具有参数所指定长整数值的对象。
    BigDecimal(String) 创建一个具有参数所指定以字符串表示的数值的对象。

    三、方法描述

    add(BigDecimal)        BigDecimal对象中的值相加,然后返回这个对象。
    subtract(BigDecimal) BigDecimal对象中的值相减,然后返回这个对象。
    multiply(BigDecimal)  BigDecimal对象中的值相乘,然后返回这个对象。
    divide(BigDecimal)     BigDecimal对象中的值相除,然后返回这个对象。
    toString()                将BigDecimal对象的数值转换成字符串。
    doubleValue()          将BigDecimal对象中的值以双精度数返回。
    floatValue()             将BigDecimal对象中的值以单精度数返回。
    longValue()             将BigDecimal对象中的值以长整数返回。
    intValue()               将BigDecimal对象中的值以整数返回。

    四、常用方法

    4.1、保留两位小数

    1. /** 
    2.  * 保留两位小数 
    3.  */  
    4. @org.junit.Test  
    5. public void formatTest() {  
    6.     double num=13.154215;  
    7.   
    8.     //方式一  
    9.     DecimalFormat df1 = new DecimalFormat("0.00");  
    10.     String str = df1.format(num);  
    11.     System.out.println(str);  //13.15  
    12.   
    13.     //方式二  
    14.     // #.00 表示两位小数 #.0000四位小数  
    15.     DecimalFormat df2 =new DecimalFormat("#.00");  
    16.     String str2 =df2.format(num);  
    17.     System.out.println(str2);  //13.15  
    18.   
    19.     //方式三  
    20.     //%.2f %. 表示 小数点前任意位数   2 表示两位小数 格式后的结果为f 表示浮点型  
    21.     String result = String.format("%.2f", num);  
    22.     System.out.println(result);  //13.15  
    23. }  
  • 相关阅读:
    深圳沙龙《QTP自动化测试的技术心得》资料已上传
    TIB自动化测试快讯 自动化测试空间一周精选(20111225)
    TIB自动化测试快讯 自动化测试空间一周精选(20111127)
    ATI自动化测试杂志2011年9月刊
    广州沙龙 Selenium自动化测试实施经验分享,现已接受报名!
    广州沙龙 《测试开发》即将举行!
    北京沙龙《socket性能测试脚本的开发、监控和调优》
    AutomationQA的Selenium栏目新添加不少Selenium资料
    活动 【在线专家问答】 QA专家 张志会 与您分享QA实战经验
    广州 Selenium自动化测试 沙龙筹备中...
  • 原文地址:https://www.cnblogs.com/jpfss/p/8072379.html
Copyright © 2011-2022 走看看