`

BigDecimal类型(+ - * /)所用的属性 【转】

 
阅读更多
[align=center;" align="center][size=medium;]1[/size]




[size=medium;]public BigDecimal(double val)[/size]




构造[/size]




将[/size]
double
表示形式转换


为[/size]
BigDecimal





[size=medium;]2[/size]




[size=medium;]public BigDecimal(int val)[/size]




构造[/size]




将[/size]
int
表示形式转换为


[size=medium;]BigDecimal[/size]




[size=medium;]3[/size]




[size=medium;]public BigDecimal(String val)[/size]




构造[/size]




将字符串表示[/size]


形式转换为[/size]
BigDecimal




[size=medium;]4[/size]




[size=medium;]public BigDecimal add(BigDecimal augend)[/size]




普通[/size]




加法[/size]




[size=medium;]5[/size]




[size=medium;]public BigDecimal subtract(BigDecimal

            subtrahend)[/size]




普通[/size]




减法[/size]




[size=medium;]6[/size]




[size=medium;]public BigDecimal multiply(BigDecimal

            multiplicand)[/size]




普通[/size]




乘法[/size]




[size=medium;]7[/size]




[size=medium;]public BigDecimal divide(BigDecimal

            divisor)[/size]




普通[/size]




除法[/size]




[/align]
范例:进行四舍五入的四则运算


package





org.lxh.demo11.numberdemo; 






import





java.math.BigDecimal; 




class





MyMath { 




    

public







static







double





add(

double





d1,

double





d2)
{        

// 进行加法运算








         BigDecimal b1 =

new





BigDecimal(d1); 




         BigDecimal b2 =

new





BigDecimal(d2); 




        

return





b1.add(b2).doubleValue(); 




     } 




    

public







static







double





sub(

double





d1,

double





d2)
{        

// 进行减法运算








         BigDecimal b1 =

new





BigDecimal(d1); 




         BigDecimal b2 =

new





BigDecimal(d2); 




        

return





b1.subtract(b2).doubleValue(); 




     } 




    

public







static







double





mul(

double





d1,

double





d2)
{        

// 进行乘法运算








         BigDecimal b1 =

new





BigDecimal(d1); 




         BigDecimal b2 =

new





BigDecimal(d2); 




        

return





b1.multiply(b2).doubleValue(); 




     } 




    

public







static







double





div(

double





d1,


double





d2,

int





len) {

// 进行除法运算








         BigDecimal b1 =

new





BigDecimal(d1); 




         BigDecimal b2 =

new





BigDecimal(d2); 




        

return





b1.divide(b2,len,BigDecimal.
ROUND_HALF_UP).doubleValue(); 




     } 




    

public







static







double





round(

double





d,


int





len) {     

// 进行四舍五入








操作 




         BigDecimal b1 =

new





BigDecimal(d); 




         BigDecimal b2 =

new





BigDecimal(

1



); 




        

// 任何一个数字除以1都是原数字








        

// ROUND_HALF_UP是BigDecimal的一个常量,
表示进行四舍五入的操作








        

return





b1.divide(b2, len,BigDecimal.
ROUND_HALF_UP).doubleValue(); 




     } 









public







class





BigDecimalDemo01 { 




    

public







static







void





main(String[] args) { 




         System.out.println(

"加法运算:"



+
MyMath.round(MyMath.add(

10.345



,  




3.333



),

1



)); 




         System.out.println(

"乘法运算:"



+
MyMath.round(MyMath.mul(

10.345



,  




3.333



),

3



)); 




         System.out.println(

"除法运算:"



+
MyMath.div(

10.345



,

3.333



,

3



)); 




         System.out.println(

"减法运算:"



+
MyMath.round(MyMath.sub(

10.345



,  




3.333



),

3



)); 




     } 




}




分享到:
评论

相关推荐

    java做的科学计算器(支持+-*/括号)

    此外,为了处理大数运算,程序利用了Java提供的`BigDecimal`类,以提供高精度的浮点数运算。 首先,让我们深入了解算符优先分析法。这是一种解析技术,用于解决计算机语言中的表达式求值问题。在这个计算器中,算符...

    JS的高精度计算(BigDecimal)

    alert(new BigDecimal("10").add(new BigDecimal("3E+10"))); //- alert(new BigDecimal("10").subtract(new BigDecimal("3E+10"))); //* alert(new BigDecimal("10").multiply(new BigDecimal("3E+10"))); // / ...

    Java工程师应用技术汇总

    - **BigDecimal**:高精度的浮点数。 - **ThreadLocal**:线程局部变量。 - **ClassLoader**:类加载器。 - **URLClassLoader**:URL类加载器。 - **ArrayList**、**LinkedList**:列表的两种实现。 - **HashMap**、...

    BigDecimal-all-last.js

    js中操作Bigdecimal类,包含所有java中bigdecimal的操作,加减乘除,四舍五入,比较等。

    如何面试java程序员.pdf,这是一份不错的文件

    - **浮点运算误差**:Java中的浮点运算存在精度误差,精确计算应使用BigDecimal类。 5. **字符集**: - **字符类型(char)**:采用Unicode字符集,支持各种语言的字符。 6. **Java编程技能**: - **阅读编程...

    java笔记.docx

    - **BigInteger**和**BigDecimal**: 处理大整数和高精度浮点数。 #### 13. 日期与时间处理 - **Date类**: 用于表示特定的瞬间,即从1970年1月1日00:00:00 GMT以来的毫秒数。 - **SimpleDateFormat类**: 格式化和...

    java 学习笔记

    - **BigInteger**和**BigDecimal**:处理大整数和高精度浮点数。 3. **Java集合框架**: - **Collection**:所有集合的顶级接口,包括List、Set和Queue。 - **List**:有序的、允许重复元素的集合,如ArrayList...

    hibernate注解配置详解

    - **precision**:指定精度,对于`decimal`类型,默认为0。 - **scale**:指定小数位数,默认为0。 - **示例**: ```java @Entity public class Employee { @Column(name = "emp_name", length = 50, nullable...

    EDI mapping 技术语言

    - **BigDecimal变量函数**:对高精度数值类型提供了支持。 - **记录计数器和UNH计数器**:这些计数器帮助跟踪记录的数量,便于统计和错误检测。 - **外部变量和计数器**:用于与其他外部程序交互,扩展了EDI Mapping...

    javascript版BigDecimal类库

    - **类型检查**:由于JavaScript的动态类型特性,确保在进行`BigDecimal`操作前,所有涉及的数值都被转换为`BigDecimal`对象。 - **性能考虑**:虽然`BigDecimal`提供了精确计算,但它的运算速度相比JavaScript原生...

    java基础易忘

    - **类型转换**: Java 支持自动类型转换,例如从较小的数据类型向较大的数据类型转换。 - **初始化**: 变量初始化时,默认情况下不会自动初始化为任何特定值,除非特别指定。 #### 13. 类型转换 - **强制类型转换**...

    Java笔记By HTT1

    如果需要更精确的计算,例如金融计算,则应使用`BigDecimal`类,因为浮点数值存在舍入误差。 #### 其他类型 - **`char`**: 占用2个字节,用于存储Unicode字符。由于Unicode扩展性问题,使用`char`类型时需谨慎。 - ...

    JAVA开发规范

    - **数值计算**:注意浮点数运算的精度问题,必要时使用`BigDecimal`。 - **finalize()**:不推荐使用,垃圾回收机制会自动调用。 - **对象集合**:选择合适的数据结构,如`List`、`Set`、`Map`等,根据需求选择。 -...

    BigDecimal向Double转换

    在Java编程语言中,BigDecimal是一种用于处理高精度数值的数据类型,尤其适用于金融计算等领域,因为它可以提供不受限的小数位数精度以及精确的数学运算能力。然而,在某些情况下,我们可能需要将BigDecimal类型的值...

    BigDecimal-CPP-master.zip

    BigDecimal是一种可以处理任意精度的十进制浮点数的数据类型,它通常用于金融或会计等需要高精度计算的领域,因为在这些场景中,浮点数的精度丢失可能导致错误的结果。 在计算机科学中,浮点数(如`float`和`double...

    java基础详解

    - **BigDecimal**:处理高精度的浮点数运算。 - **NumberFormat**:格式化数字输出。 - **String/StringBuffer/StringBuilder**:字符串操作。 - `String`:不可变字符串。 - `StringBuffer`/`StringBuilder`:可...

    clojure cheatsheet-usletter-color.pdf

    - **BigDecimal**:Clojure支持`BigDecimal`类型,并提供了精度控制的方法。 - `with-precision`: 设置BigDecimal的操作精度。 #### 十、无检查运算 - **Unchecked**:Clojure提供了无检查运算的支持。 - `*...

    最简洁实用的JAVAEE入门开发手册

    - `BigInteger` 和 `BigDecimal` 类用于处理大整数和高精度的浮点数。 - **异常处理**: - **异常分类**:运行时异常(无需显式处理)和检查性异常(必须处理)。 - **异常处理**:通过 `try-catch-finally` 结构...

    Java基础整理

    - **BigInteger和BigDecimal**:用于处理非常大的整数或小数。 - **System**:提供了一些有用的静态方法,如获取系统属性、执行系统命令等。 - **Runtime**:用于访问当前运行时系统。 - **Math**:提供了基本数学...

    java API文档

    - **java.math**:提供了高精度的数值计算,如BigInteger和BigDecimal类。 - **java.net**:支持网络编程,包括URL处理、Socket编程等。 - **java.nio**:提供了新的I/O操作方式,如基于通道和缓冲区的非阻塞I/O。 ...

Global site tag (gtag.js) - Google Analytics