如何避免在BigDecimal转long时精度丢失的问题?

2026-04-30 09:301阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计1600个文字,预计阅读时间需要7分钟。

如何避免在BigDecimal转long时精度丢失的问题?

java我简单改写一下,不超过100字:

直接看代码吧!javapublic static void main(String[] args) { BigDecimal asdBigDecimal=new BigDecimal(56.33347); long sad=asdBigDecimal.longValue(); double asda=asdBigDecimal.doubleValue(); System.out.println();}

我就废话不多说了,大家还是直接看代码吧~

public static void main(String[] args) { BigDecimal asdBigDecimal = new BigDecimal(56.33347); long sad = asdBigDecimal.longValue(); double asda = asdBigDecimal.doubleValue(); System.out.println(sad); System.out.println(asda); }

运行结果:

56

56.33347

而且BigDecimal.longValue()还会自动四舍五入,不想舍去小数点的朋友要用doubleValue()

补充知识:BigDecimal与int、long之间的相互转换及基本数据类型知识掌握

(Java提供了两个用于高精度计算的类:BigInteger和BigDecimal。

阅读全文
标签:

本文共计1600个文字,预计阅读时间需要7分钟。

如何避免在BigDecimal转long时精度丢失的问题?

java我简单改写一下,不超过100字:

直接看代码吧!javapublic static void main(String[] args) { BigDecimal asdBigDecimal=new BigDecimal(56.33347); long sad=asdBigDecimal.longValue(); double asda=asdBigDecimal.doubleValue(); System.out.println();}

我就废话不多说了,大家还是直接看代码吧~

public static void main(String[] args) { BigDecimal asdBigDecimal = new BigDecimal(56.33347); long sad = asdBigDecimal.longValue(); double asda = asdBigDecimal.doubleValue(); System.out.println(sad); System.out.println(asda); }

运行结果:

56

56.33347

而且BigDecimal.longValue()还会自动四舍五入,不想舍去小数点的朋友要用doubleValue()

补充知识:BigDecimal与int、long之间的相互转换及基本数据类型知识掌握

(Java提供了两个用于高精度计算的类:BigInteger和BigDecimal。

阅读全文
标签: