前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【答疑解惑】Java中的高精度数字

【答疑解惑】Java中的高精度数字

作者头像
程序员互动联盟
发布2018-03-13 16:36:56
8800
发布2018-03-13 16:36:56
举报
文章被收录于专栏:程序员互动联盟

前几天网友在群里有问BigDecimal能直接赋值吗?就像使用基本数据类型那样,答案是不能。

Java中的基本数据类型有的时候是不能满足实际编程需要的,特别是在数学、科学、工程、货币等领域,因为精度不够,所以Java提供了java.math.BinInteger类和java.math.BigDecimal类,其中BigInteger类是针对大整数的处理类,而BigDecimal类则是针对大小数的处理类,它们不属于基本数据类型,所以不能按照普通的基本数据类型那样计算,那么它们是怎样进行数据运算的呢?下面以BigDecimal为例进行说明。

首先查看API文档,API文档中有详细介绍。通过查看文档发现BigDecimal类提供了四类方法进行加、减、乘、除:

public BigDecimal add(BigDecimal augend) ;//加 public BigDecimal subtract(BigDecimal subtrahend) ;//减 public BigDecimal multiply(BigDecimal multiplicand);//乘 public BigDecimal divide(BigDecimal divisor);//除

例如:

代码语言:javascript
复制
BigDecimal money = new BigDecimal("15328.328"); //本金
BigDecimal interestRate = new BigDecimal("0.008"); //利率   
BigDecimal sum = money.multiply(interestRate); //总共金额

BigInteger类的操作与BigDecimal类似。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2015-07-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序员互动联盟 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档