背景
涉及到比较大的数字之间的计算,使用float、double这样的浮点数就不那么准确了。因为不论是float 还是double都是浮点数,而计算机是二进制的,浮点数会失去一定的精确度。所以在商业计算中基本要用java.math.BigDecimal
一、初始化使用
public static void main(String[] args) {
// 可以使用
BigDecimal bigDecimal1 = new BigDecimal(10);
// 推荐使用
BigDecimal bigDecimal2 = new BigDecimal("10.123");
// 不推荐 会丢失精确度
BigDecimal bigDecimal3 = new BigDecimal(10.123);
System.out.println("输出bigDecimal1:"+bigDecimal1);
System.out.println("输出bigDecimal2:"+bigDecimal2);
System.out.println("输出bigDecimal3:"+bigDecimal3);
}
结果输出:
1.2、BigDecimal还提供默认值创建(0、1、10)
public static void main(String[] args) {
// 创建默认为0
BigDecimal bigDecimal1 = BigDecimal.ZERO;
// 创建默认为1
BigDecimal bigDecimal2 = BigDecimal.ONE;
// 创建默认为10
BigDecimal bigDecimal3 = BigDecimal.TEN;
System.out.println("输出bigDecimal1: "+bigDecimal1);
System.out.println("输出bigDecimal2: "+bigDecimal2);
System.out.println("输出bigDecimal3: "+bigDecimal3);
}
结果输出: 文章来源:https://www.toymoban.com/news/detail-595600.html
文章来源地址https://www.toymoban.com/news/detail-595600.html
1.3、int、long、double等,也可以这么创建实例(不推荐)
public static void main(String[] args) {
// 创建默认为0
BigDecimal bigDecimal1 = BigDecimal.valueOf(10);
// 创建默认为1
BigDecimal bigDecimal2 = BigDecimal.valueOf(10L);
// 创建默认为10
BigDecimal bigDecimal3 = BigDecimal.valueOf(10.1);
System.out.println("输出bigDecimal1: "+bigDecimal1);
System.out.pri
到了这里,关于BigDecimal 基本使用和常用方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!