DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。

DecimalFormat 包含一个模式 和一组符号

符号含义:

0 一个数字

# 一个数字,不包括 0

. 小数的分隔符的占位符

, 分组分隔符的占位符

; 分隔格式。

- 缺省负数前缀。

% 乘以 100 和作为百分比显示

? 乘以 1000 和作为千进制货币符显示;用货币符号代替;如果双写,用

国际货币符号代替。如果出现在一个模式中,用货币十进制分隔符代

替十进制分隔符。

X 前缀或后缀中使用的任何其它字符,用来引用前缀或后缀中的特殊字符。

例子:

DecimalFormat df1 = new DecimalFormat("0.0"); 
 
  DecimalFormat df2 = new DecimalFormat("#.#");

DecimalFormat df3 = new DecimalFormat("000.000");

DecimalFormat df4 = new DecimalFormat("###.###");

System.out.println(df1.format(12.34));

System.out.println(df2.format(12.34));

System.out.println(df3.format(12.34));

System.out.println(df4.format(12.34));

结果:

12.3

12.3

012.340

12.34

DecimalFormat df = new DecimalFormat();
double data = 1234.56789;
System.out.println("格式化之前的数字: " + data);
String style = "0.0";//定义要显示的数字的格式
df.applyPattern(style);// 将格式应用于格式化器
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
style = "00000.000 kg";//在格式后添加诸如单位等字符
df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
// 模式中的"#"表示如果该位存在字符,则显示字符,如果不存在,则不显示。
style = "##000.000 kg";
df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
// 模式中的"-"表示输出为负数,要放在最前面
style = "-000.000";
df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
// 模式中的","在数字中添加逗号,方便读数字
style = "-0,000.0#";
df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
// 模式中的"E"表示输出为指数,"E"之前的字符串是底数的格式,
// "E"之后的是字符串是指数的格式
style = "0.00E000";
df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
// 模式中的"%"表示乘以100并显示为百分数,要放在最后。
style = "0.00%";
df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df.format(data));
// 模式中的"\u2030"表示乘以1000并显示为千分数,要放在最后。
style = "0.00\u2030";
//在构造函数中设置数字格式
DecimalFormat df1 = new DecimalFormat(style);
//df.applyPattern(style);
System.out.println("采用style: " + style + " 格式化之后: " + df1.format(data));

格式化之前的数字: 1234.56789
采用style: 0.0  格式化之后: 1234.6
采用style: 00000.000 kg  格式化之后: 01234.568 kg
采用style: ##000.000 kg  格式化之后: 1234.568 kg
采用style: -000.000  格式化之后: -1234.568
采用style: -0,000.0#  格式化之后: -1,234.57
采用style: 0.00E000  格式化之后: 1.23E003
采用style: 0.00%  格式化之后: 123456.79%
采用style: 0.00‰  格式化之后: 1234567.89‰

(转)java DecimalFormat用法的更多相关文章

  1. Java DecimalFormat 用法

    Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子.下面是一个例子: importjava.text.DecimalFormat; publicclassTes ...

  2. [转] Java DecimalFormat 用法

    我们经常要将数字进行格式化,比如取2位小数,这是最常见的.Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子.下面是一个例子: importjava.text. ...

  3. Java DecimalFormat 用法(数字格式化)

    我们经常要将数字进行格式化,比如取2位小数,这是最常见的.Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子.下面是常用的例子: import java.tex ...

  4. (转)Java DecimalFormat 用法(数字格式化)

    我们经常要将数字进行格式化,比如取2位小数,这是最常见的.Java 提供 DecimalFormat 类,帮你用最快的速度将数字格式化为你需要的样子.下面是常用的例子: import java.tex ...

  5. 【转载】Java DecimalFormat 用法

    转载只供个人学习参考,以下查看请前往原出处:http://blog.csdn.net/wangchangshuai0010/article/details/8577982 我们经常要将数字进行格式化, ...

  6. 【转】java list用法示例详解

    转自:http://www.jb51.net/article/45660.htm java中可变数组的原理就是不断的创建新的数组,将原数组加到新的数组中,下文对java list用法做了详解. Lis ...

  7. Java List 用法代码分析 非常详细

    Java中可变数组的原理就是不断的创建新的数组,将原数组加到新的数组中,下文对Java List用法做了详解. List:元素是有序的(怎么存的就怎么取出来,顺序不会乱),元素可以重复(角标1上有个3 ...

  8. Java split用法

    Java split用法 java.lang.string.split split 方法  将一个字符串分割为子字符串,然后将结果作为字符串数组返回. stringObj.split([separat ...

  9. DecimalFormat用法

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

随机推荐

  1. webapi文档描述-swagger

    最近做的项目使用mvc+webapi,采取前后端分离的方式,后台提供API接口给前端开发人员.这个过程中遇到一个问题后台开发人员怎么提供接口说明文档给前端开发人员,最初打算使用word文档方式进行交流 ...

  2. C#知识点-委托

    一.什么是委托 委托和类一样,是一种用户自定义类型: 类表示的是数据和方法的集合,而委托则持有一个或多个方法: 二.委托的使用 1.声明委托类型 委托是类型,与类一样,委托类型必须在被用来创建变量以及 ...

  3. AJAX与PHP(PHP笔记)--动态验证用户名

    在PHP基础的学习过程中经常会遇到对页面的局部刷新. 比如说,我们在填写用户名的同时,对数据库中的信息进行验证,检查是否充分. 这时就要用到AJAX实现页面的动态加载. 下面例子是简单的PHP与AJA ...

  4. 安卓模拟器genymotion连接eclipse成功但是不显示其中项目

    安卓模拟器困了我两三天了,原装模拟器比较慢,忍受不了,查到安卓模拟器的神器——genymotion 按照网上的步骤一步步都安装完毕,最后打开后发现,genymotion界面里面没有找到新建的工程, 这 ...

  5. json中含有Unicode的处理办法 C#

    public static class StringExtension { #region unicode 字符转义 /// <summary> /// 转换输入字符串中的任何转义字符.如 ...

  6. 24、ASP.NET MVC入门到精通——数据库仓储

    本系列目录:ASP.NET MVC4入门到精通系列目录汇总 业务层调用数据层对象,我不想每次都new一个数据层对象,而是在数据层创建一个仓储,统一管理所有的对象调用. 1.在IDAL项目中,新建IDB ...

  7. Java基础学习总结 -- 多线程的实现

    目录: 继承Thread类 start()方法实现多线程的原理 实现Runnable接口 Thread类 与 Runnable接口 的联系与区别 多线程的实现方法: 继承Thread类 实现Runna ...

  8. 【HTML DOM】Node.nodeValue的用法

    目录结构: // contents structure [-] 语法 注意 详述 实例 参考文章 Note.noteValue 属性返回或设置当前属性的值. 语法 value = node.nodeV ...

  9. 【再探backbone04】单页应用的基石-路由处理

    前言 首先发一点牢骚,互联网公司变化就是快,我去一个团队往往就一年时间该团队就得解散,这不,公司居然把无线团队解散了,我只能说,我那个去!!! 我去年还到处让人来呢,一个兴兴向荣的团队说没就没了啊!我 ...

  10. kmdjs指令大全

    调试 通过下面方式,可以输出kmdjs声称的类: <script src="../dist/kmd.js?debug" data-main="js/main&quo ...