我是靠谱客的博主 真实大船,最近开发中收集的这篇文章主要介绍double保留2位小数,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1. format

double dou = 3.14789;
String douStr = String.format("%.2f", dou);
System.out.println("douStr:" + douStr);

注:四舍五入,位数不够则会用0补齐。
2. bigDecimal

double dou = 3.14789;
//BigDecimal.ROUND_UP 四舍五入
//BigDecimal.ROUND_DOWN 直接舍弃保留位数之后小数
BigDecimal bigDecimal = new BigDecimal(dou).setScale(2, BigDecimal.ROUND_DOWN);
double newDouble = bigDecimal.doubleValue();
System.out.println("newDouble:" + newDouble);

注:
1、BigDecimal.ROUND_UP 四舍五入,BigDecimal.ROUND_DOWN 直接舍弃保留位数之后小数;
2、位数不够时,不会补齐。

3. NumberFormat

double dou = 3.14789;
NumberFormat numberFormat = NumberFormat.getNumberInstance();
numberFormat.setMaximumFractionDigits(2);
//RoundingMode.UP 四舍五入
//RoundingMode.DOWN 直接舍弃保留位数之后小数
//不指定则默认就是四舍五入
numberFormat.setRoundingMode(RoundingMode.DOWN);  
String douStr2 = numberFormat.format(dou);
System.out.println("douStr2:" + douStr2);

注:
1、RoundingMode.UP 四舍五入,RoundingMode.DOWN 直接舍弃保留位数之后小数;
2、NumberFormat不指定RoundingMode时默认为四舍五入;
3、位数不够时,不会补齐。

最后

以上就是真实大船为你收集整理的double保留2位小数的全部内容,希望文章能够帮你解决double保留2位小数所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(63)

评论列表共有 0 条评论

立即
投稿
返回
顶部