##NumberFormat##

调用NumberFormat的工厂方法,如getInstance(),来获取具体语言环境的NumberFormat(包括默认语言环境)。该类设计有各种功能,使其能够解析和格式化任意语言环境中的数,包括对西方语言、阿拉伯语和印度语数字的支持。它还支持不同类型的数,包括整数(123)、定点数(123.4)、科学记数法表示的数(1.23E4)、百分数(12%)和金额($123)。所有这些内容都可以本地化。 (通常不直接调用DecimalFormat的构造方法,因为NumberFormat的工厂方法可能返回不同于DecimalFormat的子类。DecimalFormat是NumberFormat的一个具体子类,用于格式化十进制数字。)

    /*** 格式化format* */NumberFormat numberFormat = NumberFormat.getNumberInstance(Locale.US);numberFormat.setMaximumIntegerDigits(5); // 整数部分最大位数numberFormat.setMinimumIntegerDigits(3); // 整数部分最小位数numberFormat.setMaximumFractionDigits(5); // 小数部分最大位数numberFormat.setMinimumFractionDigits(3); // 小数部分最小位数String number1 = numberFormat.format(1234567.1234567); // 34,567.12346 四舍五入String number2 = numberFormat.format(12.12); // 012.120 补0Log.d(TAG, " numberFormat : number1=" + number1 + ", number2=" + number2);NumberFormat currencyFormat = NumberFormat.getCurrencyInstance(Locale.CHINA);String currency1 = currencyFormat.format(321283.47656); // ¥ 321,283.48currencyFormat.setMaximumFractionDigits(3);String currency2 = currencyFormat.format(321283.47656); // ¥ 321,283.477Log.d(TAG, " currencyFormat : number1=" + currency1 + ", number2=" + currency2);NumberFormat percentFormat = NumberFormat.getPercentInstance(Locale.US);String percent1 = percentFormat.format(321283.47656); //32,128,348%Log.d(TAG, " percentFormat : number1=" + percent1 + ", number2=" + percent1);/*** 解析parse* */NumberFormat nf1 = NumberFormat.getInstance(Locale.US);Object obj1 =  nf1.parse("123,456");NumberFormat nf2 = NumberFormat.getInstance(Locale.GERMAN); // 德国Object obj2 = nf2.parse("123,456");//Number parse : number1=123456, number2=123.456Log.d(TAG, "Number parse : number1=" + obj1 + ", number2=" + obj2);Number number = percentFormat.parse("32,128,745%");Log.d(TAG, "===" + number.doubleValue()); //321287.45Log.d(TAG, "===" + number.floatValue()); //321287.44Log.d(TAG, "===" + number.intValue()); //321287Log.d(TAG, "===" + number.byteValue()); //7Log.d(TAG, "===" + number.longValue()); //321287

##DecimalFormat##

  DecimalFormat df1 = new DecimalFormat("0.0");DecimalFormat df2 = new DecimalFormat("#.#");DecimalFormat df3 = new DecimalFormat("000.000");DecimalFormat df4 = new DecimalFormat("###.###");Log.d(TAG,df1.format(12.35)); //12.4Log.d(TAG,df2.format(12.34)); //12.3Log.d(TAG,df3.format(12.34)); //012.340Log.d(TAG,df4.format(12.34)); //2.34

参考: 官方文档 https://developer.android.com/reference/java/text/DecimalFormat.html DecimalFormat()格式化输出数字 http://blog.sina.com.cn/s/blog_8b7a1553010172ex.html java保留两位小数 http://blog.csdn.net/yuhua3272004/article/details/3075436

NumberFormat和DecimalFormat相关推荐

  1. java中NumberFormat 、DecimalFormat的介绍及使用,java数字格式化,BigDecimal数字格式化

    文章目录 前言 一.NumberFormat 1.概述 2.实例化方法 3.货币格式化 4.百分比格式化 5.NumberFormat的坑 5.1.不同的格式化对象处理相同数值返回结果不同 问题 源码 ...

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

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

  3. java中的%nf_java中DecimalFormat四舍五入用法详解

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

  4. Java数字格式:DecimalFormat

    在Java Numeric Formatting一文中 ,我描述并演示了NumberFormat静态方法提供的一些有用实例,例如NumberFormat.getNumberInstance(Local ...

  5. java thread 无法执行_哪位大神帮我讲一下这段代码,为什么线程不能继续执行

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.A ...

  6. java保存数字_Java:JFormattedTextField保存数字

    即使JFormattedTextField实现DecimalFormat和NumberFormat ,也会使用DocumentListener , 1)通过使用DecimalFormat或Number ...

  7. 11.1.1 认识StringBuffer类(1)

    第11章 Java常用类库 通过本章的学习可以达到以下目标: 掌握String与StringBuffer的区别,可以熟练使用StringBuffer中的各种方法进行相关操作. 能够自己编写一个得到日期 ...

  8. mapstruct使用

    Mapstruct 版本1.5.0.Beta1 官方文档 案例-github 前言 MapStruct是一个Java注释处理器,用于生成类型安全的bean映射类. 您要做的就是定义一个映射器接口,该接 ...

  9. 关于四舍六入五成双的问题

    /** * 四舍六入五成双 * @param db 需要进行处理的数据 * @param len 有效位数 * @return 处理完成数据的字符串 */ public static String g ...

  10. Java 科学计数法

    目录 Java 科学计数法 1 科学计数法的概念 1.1 有效数字 1.2 E记号 2 Java中的科学计数法 2.1 NumberFormat 2.2 DecimalFormat 2.3 BigDe ...

最新文章

  1. 新晋小白怎样才能做好seo优化
  2. 重庆python就业工资待遇-重庆python培训多少钱?
  3. 用友伟库“抢劫”金算盘,调研数据究竟谁说了算?
  4. Redis快的原因:内存操作 单线程没有切换开销 多路复用IO
  5. [数据库] Navicat for MySQL触发器更新和插入操作
  6. 玩转 SpringBoot 2.x 之 RedisTemplate 操作
  7. vscode 插件导出_VScode插件推荐
  8. Ubuntu 10.04 is coming
  9. 一次线上商城系统高并发优化,涨姿势了~
  10. cad批量打印快捷键_批量打印CAD图(无删减版)
  11. 电脑上怎么批量压缩图片?如何快速批量压缩图片?
  12. 我喜欢计算机科学作文,我爱电脑作文9篇
  13. 百思不得姐php源码,百思不得姐源代码(xcode)
  14. 卷积神经网络及图像处理中共享权重、特征映射等理解
  15. “术业有专攻”和“功夫在行外”--笑来
  16. 社团管理系统(part2)
  17. u盘无响应+开启什么服务器,服务没有及时响应启动或控制请求怎么办?如何解决系统服务没有及时响应启动...
  18. kali linux怎么远程桌面,适用于kali linux的远程桌面开启方法(从windows xp 远程登录到kali linux )...
  19. 怎么人像抠图?这几种抠图方法一看就会
  20. day41 | 416. 分割等和子集

热门文章

  1. 关于DNF的多媒体包NPK文件的那些事儿(5)- IMG文件里的指向型索引项(指向帧)的深度与有向环检测
  2. Android开发中加载Gif动画图片方法
  3. MATLAB算法实战应用案例精讲-【智能优化算法】蝙蝠算法-BA(附MATLAB和Python代码)
  4. 【MM32F5270开发板试用】基于MindSDK对接雨滴传感器
  5. 创维广电服务器无线,创维电视与电脑无线投屏条件
  6. 华为手机从浏览器安装第三方软件签名不一致如何强制安装
  7. [Windows]msvcr110.dll运行库缺失问题解决方案
  8. Quartus 与 ModelSim 联合仿真详细步骤
  9. Rhino基础教程---三管混接
  10. 基于Android的百度地图显示