概述
一、为什么为用到BigInteger和BigDecimal这种数据类型呢?
我们非常清楚,Java里面整型int与浮点型float,double它们存放数据的范围是有边界的。那么如果需要更大的数据时,这些数据类型肯定是满足不了这种需求,所以就用到了BigInteger和BigDecimal来解决这个问题。
二、BigInteger与BigDecimal这两个类是什么包里面的?它们的作用分别是什么?
1、java.math包
2、BigInteger实现了任意精度的整数运算;
BigDecimal实现了任意精度的浮点数运算。
三、怎么将普通的数值转换成大数值呢?
分别调用BigInteger.valueOf("普通数值"),BigDecimal.valueOf("普通数值")即可。
四、大数据类BigInteger与BigDecimal它们没有重载"+","-","*",“/”这四个运算操作符,是不能直接进行数据运算的,那么如何来进行运算操作呢?
需要使用BigInteger与BigDecimal中提供的方法:
+——add();
System.out.println(BigInteger.valueOf(10).add(BigInteger.valueOf(5)));
- ——subtract();
System.out.println(BigInteger.valueOf(10).subtract(BigInteger.valueOf(5)));
*——multiply();
System.out.println(BigInteger.valueOf(10).multiply(BigInteger.valueOf(5)));
/——divide();
System.out.println(BigInteger.valueOf(10).divide(BigInteger.valueOf(5)));
构造器描述 BigDecimal(int)创建一个具有参数所指定整数值的对象。 BigDecimal(double)创建一个具有参数所指定双精度值的对象。 BigDecimal(long)创建一个具有参数所指定长整数值的对象。 BigDecimal(String)创建一个具有参数所指定以字符串表示的数值的对象。
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对象中的值以整数返回。
add(BigDecimal)BigDecimal对象中的值相加,然后返回这个对象。
subtract(BigDecimal)BigDecimal对象中的值相减,然后返回这个对象。
multiply(BigDecimal)BigDecimal对象中的值相乘,然后返回这个对象。
divide(BigDecimal)BigDecimal对象中的值相除,然后返回这个对象。
toString()将BigDecimal对象的数值转换成字符串。
doubleValue()将BigDecimal对象中的值以双精度数返回。
floatValue()将BigDecimal对象中的值以单精度数返回。
longValue()将BigDecimal对象中的值以长整数返回。
intValue()将BigDecimal对象中的值以整数返回。
注意,由于一般数值类型,例如double,不能准确地代表16位有效数以上的数字,在使用BigDecimal时,应用 BigDecimal(String)构造器创建对象才有意义。另外,BigDecimal所创建的是对象,我们不能使用传统的+、-、*、/等算术运算 符直接对其对象进行数学运算,而必须调用其相对应的方法。方法中的参数也必须是BigDecimal的对象。
最后
以上就是动听萝莉为你收集整理的java 中的大数据类型(BigInteger和BigDecimal)的全部内容,希望文章能够帮你解决java 中的大数据类型(BigInteger和BigDecimal)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复