当前位置: 首页 > wzjs >正文

欧美免费1级做爰片在线观看网站电商运营工资一般多少钱一个月

欧美免费1级做爰片在线观看网站,电商运营工资一般多少钱一个月,网站办事服务建设情况,南京建设网站维护BigDecimal 是 Java 中用于高精度计算的类,特别适合需要精确十进制运算的场景,如金融计算、货币运算、概率计算等。 为什么需要 BigDecimal类 解决浮点数精度问题:float 和 double 使用二进制浮点运算,无法精确表示某些十进制小数…

BigDecimal 是 Java 中用于高精度计算的类,特别适合需要精确十进制运算的场景,如金融计算、货币运算、概率计算等。

为什么需要 BigDecimal类

  1. 解决浮点数精度问题float 和 double 使用二进制浮点运算,无法精确表示某些十进制小数(如 0.1)

  2. 精确计算需求:在财务、税务等场景中,舍入误差是不可接受的

  3. 大数处理:可以处理非常大的数,且保持精度

使用 double 进行金融计算时可能出现精度问题:

System.out.println(0.1 + 0.2);  // 输出 0.30000000000000004

BigDecimal 可以精确表示和计算十进制数:

BigDecimal a = new BigDecimal("0.1");
BigDecimal b = new BigDecimal("0.2");
System.out.println(a.add(b));  // 输出 0.3

创建 BigDecimal 对象

有几种创建 BigDecimal对象 的方式:

使用字符串构造器(推荐,避免精度问题):

BigDecimal a = new BigDecimal("0.1");

使用 double 构造器(不推荐,可能有精度问题):

BigDecimal b = new BigDecimal(0.1);

使用 valueOf 静态方法:

BigDecimal c = BigDecimal.valueOf(0.1);

使用整数构造:

BigDecimal d = new BigDecimal(1);

基本运算

BigDecimal 提供了各种数学运算方法,所有方法都返回新的 BigDecimal 对象(不可变性):

BigDecimal a = new BigDecimal("10");
BigDecimal b = new BigDecimal("3");// 加法
BigDecimal sum = a.add(b);  // 13// 减法
BigDecimal difference = a.subtract(b);  // 7// 乘法
BigDecimal product = a.multiply(b);  // 30// 除法
BigDecimal quotient = a.divide(b, 2, RoundingMode.HALF_UP);  // 3.33// 取余
BigDecimal remainder = a.remainder(b);  // 1

精度和舍入模式

BigDecimal 允许控制计算的精度和舍入方式:

BigDecimal a = new BigDecimal("10");
BigDecimal b = new BigDecimal("3");// 除法时指定精度和舍入模式
BigDecimal result = a.divide(b, 4, RoundingMode.HALF_UP);  // 3.3333

常用舍入模式:

  • RoundingMode.UP - 远离零方向舍入

  • RoundingMode.DOWN - 向零方向舍入

  • RoundingMode.CEILING - 向正无穷方向舍入

  • RoundingMode.FLOOR - 向负无穷方向舍入

  • RoundingMode.HALF_UP - 四舍五入

  • RoundingMode.HALF_DOWN - 五舍六入

  • RoundingMode.HALF_EVEN - 银行家舍入法

比较操作

不要使用 equals()方法 比较 BigDecimal,因为它会同时比较值和精度,推荐使用 compareTo() 方法进行值比较:

BigDecimal a = new BigDecimal("2.0");
BigDecimal b = new BigDecimal("2.00");System.out.println(a.equals(b));  // false
System.out.println(a.compareTo(b) == 0);  // true 

对于compareTo的返回值:

  • 0表示相等
  • 1表示a>b
  • -1表示a<b

BigDecimal 中的常用常量详解

BigDecimal 类提供了一些非常有用的常量,这些常量可以简化代码编写,提高代码可读性。

BigDecimal类 中定义了以下常用常量:

BigDecimal.ZERO    // 表示0
BigDecimal.ONE     // 表示1
BigDecimal.TEN     // 表示10

这些常量都是 public static final修饰的,可以直接使用。

详解:

BigDecimal.ZERO

表示数值0的 BigDecimal 对象。

使用场景:

  • 初始化累加变量

  • 比较操作

  • 作为计算的基准值

示例代码:

// 初始化累加器
BigDecimal sum = BigDecimal.ZERO;// 比较操作
if (amount.compareTo(BigDecimal.ZERO) > 0) {System.out.println("金额为正数");
}// 作为计算的基准值
BigDecimal result = someCalculation().add(BigDecimal.ZERO);

BigDecimal.ONE

表示数值1的 BigDecimal 对象。

使用场景:

  • 单位计算

  • 比例计算

  • 作为乘数或除数

示例代码:

// 计算百分比
BigDecimal hundred = new BigDecimal("100");
BigDecimal percentage = value.divide(hundred, 4, RoundingMode.HALF_UP).multiply(BigDecimal.ONE);// 作为乘数
BigDecimal doubledValue = originalValue.multiply(BigDecimal.ONE.add(BigDecimal.ONE));// 单位转换
BigDecimal kmToM = distanceInKm.multiply(new BigDecimal("1000").multiply(BigDecimal.ONE));

BigDecimal.TEN

表示数值10的 BigDecimal 对象。

使用场景:

  • 十进制计算

  • 单位转换

  • 比例缩放

示例代码:

// 十进制转换
BigDecimal centimeters = meters.multiply(BigDecimal.TEN).multiply(BigDecimal.TEN);// 计算平均数
BigDecimal average = sum.divide(count, 2, RoundingMode.HALF_UP).multiply(BigDecimal.TEN).divide(BigDecimal.TEN);// 比例缩放
BigDecimal scaledValue = originalValue.movePointRight(1).divide(BigDecimal.TEN, 2, RoundingMode.HALF_UP);

使用常量的优势

  1. 提高代码可读性BigDecimal.ZERO 比 new BigDecimal("0") 更直观

  2. 避免重复创建对象:常量只创建一次,可以重复使用

  3. 减少错误:避免手动创建时可能的输入错误

  4. 性能优化:减少不必要的对象创建

最佳实践

  1. 优先使用字符串构造器:避免 double 构造器的精度问题

  2. 指定舍入模式:特别是除法运算时

  3. 使用 compareTo 比较值:而不是 equals

  4. 注意不可变性:所有运算都返回新对象

  5. 考虑性能BigDecimal 运算比基本类型慢

http://www.dtcms.com/wzjs/163378.html

相关文章:

  • wordpress推广网站插件培训机构
  • wordpress 总浏览数量整站优化是什么意思
  • 哪做网站比较好高清网站推广免费下载
  • 西安南郊做网站网络推广怎么做才有效
  • 动易网站怎么进入后台网络广告怎么做
  • 长春建站软件免费搜索引擎推广方法有哪些
  • 网站建设最新签约市场调研报告怎么写
  • 仿牌外贸网站建设杭州网站推广公司
  • seo博客写作厦门seo推广优化
  • 湖南3合1网站建设刷关键词要刷大词吗
  • wordpress html音乐播放器seo排名优化软件免费
  • 如何做一款服装网站什么网站推广比较好
  • dw做的网站怎么发布到网上免费网站java源码大全
  • 临漳seo整站排名阿里指数app下载
  • 专业外贸网站建设线上招生引流推广方法
  • 网站建设业务好做吗网络营销试题库及答案
  • 腾讯 网站建设seo英文全称
  • 真人性做爰视频网站html网页制作代码大全
  • 基于dw的动物网站设计论文找客源免费用哪个软件好
  • 天助网站成都seo优化外包公司
  • unas做网站服务器关键词优化公司网站
  • 网站建设行业seo网站排名的软件
  • 门户网什么意思seo店铺描述
  • 成都微信小程序开发点击精灵seo
  • 专业购物网站建设报价不知怎么入门
  • 青岛做优化网站哪家好168推广网
  • 做网站至少要花多少钱百度竞价什么意思
  • 汕头快速排名搜索引擎优化的主要工作
  • 苏州市市政建设集团公司网站2022推广app赚佣金平台
  • 网站301是什么竞价如何屏蔽恶意点击