DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字 默认采用的是四舍五入模式,当然我们可以修改模式

具体用法如下

符号 位置 本地化? 含义
0 数字 阿拉伯数字
# 数字字 阿拉伯数字,如果不存在则显示为 0
. 数字 小数分隔符或货币小数分隔符
- 数字 减号
, 数字 分组分隔符
E 数字 分隔科学计数法中的尾数和指数。在前缀或后缀中无需加引号。
; 子模式边界 分隔正数和负数子模式
% 前缀或后缀 乘以 100 并显示为百分数
\u2030 前缀或后缀 乘以 1000 并显示为千分数
¤ (\u00A4) 前缀或后缀 货币记号,由货币符号替换。如果两个同时出现,则用国际货币符号替换。如果出现在某个模式中,则使用货币小数分隔符,而不使用小数分隔符。
' 前缀或后缀 用于在前缀或或后缀中为特殊字符加引号,例如 "'#'#" 将 123 格式化为 "#123"。要创建单引号本身,请连续使用两个单引号:"# o''clock"

API 地址

下面说2个0 和#

        double str =1.538;DecimalFormat decimalFormat = new DecimalFormat("0");Log.e("-----decimalFormat", decimalFormat.format(str));// 打印结果 2DecimalFormat decimalFormat1 = new DecimalFormat("0.0");Log.e("-----decimalFormat1", decimalFormat1.format(str));// 打印结果 1.5DecimalFormat decimalFormat2 = new DecimalFormat("0.00");Log.e("-----decimalFormat2", decimalFormat2.format(str));// 打印结果 1.54DecimalFormat decimalFormat3 = new DecimalFormat("00.00");Log.e("-----decimalFormat3", decimalFormat3.format(str));// 打印结果 01.54DecimalFormat decimalFormat4 = new DecimalFormat("#");Log.e("-----decimalFormat4", decimalFormat4.format(str));// 打印结果 2DecimalFormat decimalFormat5 = new DecimalFormat("#.#");Log.e("-----decimalFormat5", decimalFormat5.format(str));// 打印结果 1.5DecimalFormat decimalFormat6 = new DecimalFormat("#.##");Log.e("-----decimalFormat6", decimalFormat6.format(str));// 打印结果 1.54DecimalFormat decimalFormat7 = new DecimalFormat("##.##");Log.e("-----decimalFormat7", decimalFormat7.format(str));// 打印结果 1.54

变量修改下,在此看下打印结果

        double str =1.5;DecimalFormat decimalFormat = new DecimalFormat("0");Log.e("-----decimalFormat", decimalFormat.format(str));// 打印结果 2DecimalFormat decimalFormat1 = new DecimalFormat("0.0");Log.e("-----decimalFormat1", decimalFormat1.format(str));// 打印结果 1.5DecimalFormat decimalFormat2 = new DecimalFormat("0.00");Log.e("-----decimalFormat2", decimalFormat2.format(str));// 打印结果 1.50DecimalFormat decimalFormat3 = new DecimalFormat("00.00");Log.e("-----decimalFormat3", decimalFormat3.format(str));// 打印结果 01.50DecimalFormat decimalFormat4 = new DecimalFormat("#");Log.e("-----decimalFormat4", decimalFormat4.format(str));// 打印结果 2DecimalFormat decimalFormat5 = new DecimalFormat("#.#");Log.e("-----decimalFormat5", decimalFormat5.format(str));// 打印结果 1.5DecimalFormat decimalFormat6 = new DecimalFormat("#.##");Log.e("-----decimalFormat6", decimalFormat6.format(str));// 打印结果 1.5DecimalFormat decimalFormat7 = new DecimalFormat("##.##");Log.e("-----decimalFormat7", decimalFormat7.format(str));// 打印结果 1.5

下面修改下默认的模式,

   double str =1.5;DecimalFormat decimalFormat = new DecimalFormat("0");decimalFormat.setRoundingMode(RoundingMode.DOWN);Log.e("-----decimalFormat", decimalFormat.format(str));// 打印结果 1

自己用的也就是这2个,其他的感兴趣可以自己试试。。。

DecimalFormat 的使用相关推荐

  1. java中decimalFormat格式化数值

    介绍 我们经常要对数字进行格式化,比如取小数点后两位小数,或者加个百分比符号等,Java提供了DecimalFormat这个类 0 和 # 的区别 "#"可以理解为在正常的数字显示 ...

  2. java中关于DecimalFormat四舍五入的用法

    DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字.它可以支持不同类型的数,包括整数 (123).定点数 (123.4).科学记数法表示的数 (1.23E4 ...

  3. Java DecimalFormat 用法 小数位的处理 公司内部处理小数位

    <pre name="code" class="javascript"><pre name="code" class=&q ...

  4. decimalformat精度丢失_笔记一:DecimalFormat BigDecimal

    一.DecimalFormat(数字格式化) 例1: import java.text.DecimalFormat; public class Test{ public static void mai ...

  5. (转)java DecimalFormat用法

    DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字. DecimalFormat 包含一个模式 和一组符号 符号含义: 0 一个数字 # 一个数字,不包括 ...

  6. DecimalFormat格式化输出带小数的数字类型

    刚開始 double d = 333333333.333333333; System.out.println(d); 输出结果为3.333333333333333E8 网上找到了DecimalForm ...

  7. DecimalFormat 保留精度或者是 小数 比较好用

    2019独角兽企业重金招聘Python工程师标准>>> DecimalFormat 还是比较稳定和好用的 .少bug . BigDecimal 类也有 四舍五入 ,和 保留 多少位小 ...

  8. DecimalFormat 类

    前言 java1.8 我们经常要将数字进行格式化,比如取2位小数 Java 提供的 DecimalFormat 类,就是用于数字格式化 例子 左补0 System.out.println(new De ...

  9. java中商业数据计算时用到的类BigDecimal和DecimalFormat

    1.引言 借用<Effactive Java>这本书中的话,float和double类型的主要设计目标是为了科学计算和工程计算.他们执行二进制浮点运算,这是为了在广域数值范围上提供较为精确 ...

最新文章

  1. 零基础入门学习Python(2)
  2. php页面栏目访问权限,PHPCMS 栏目和内容浏览权限的解决方法
  3. c++ 如何给 “运行中“ 的线程传递数据;
  4. Numbers on the Chessboard
  5. 计算机公共基础知识实验报告,20140902413 李雪瑞 计算机工程系实验报告345.docx...
  6. Pascal's Triangle II
  7. java是如何调用native方法?hotspot源码分析必会技能
  8. python移动文件夹下所有文件到另一个文件夹
  9. SpringBoot-Learning-作者:翟永超
  10. 流媒体 3——彩色数字图像基础
  11. 如何使用报表工具制作条形码报表
  12. 探索 ES8 Object.entries()
  13. python学习记录——容器篇
  14. c语言输出漏斗图形7层,ECharts 教程 漏斗图属性与实例介绍 - 闪电教程JSRUN
  15. 如何对pdf进行编辑修改linux,Xournal: 随心编辑PDF
  16. redis数据结构及其应用场景
  17. 什么样的人适合做数据分析师?
  18. 借贷期末余额 oracle,期初余额和期末余额的借贷方是一样的吗
  19. android 图片凸出
  20. 解决英文、特殊字符自动换行

热门文章

  1. 2022-2028年中国钛合金行业深度调研及投资前景预测报告
  2. 2022-2028年中国汽车塑料行业市场深度分析及投资趋势预测报告
  3. fatal error all goroutines are asleep - deadlock!
  4. 【B/S实践】IIS发布
  5. 未授予用户在此计算机上的请求登陆类型处理办法
  6. Python:pip 和pip3的区别
  7. LeetCode简单题之判断路径是否相交
  8. Atomic Layer Deposition原子层沉积技术
  9. 开放神经网络交换(ONNX)工具
  10. 3D点云点云分割、目标检测、分类