格式化包括如下内容:
  • 基本用法
  • 金钱格式;
  • 科学计数法;
  • 百分比计数法;
  • 嵌入文本;

  1. package com.sssppp.NumberFormat;
  2. import java.text.DecimalFormat;
  3. public class DecimalFormatExample {
  4. public static void main(String arg[]) {
  5. double piD=3.1415926;
  6. float piF=3.1415926f;
  7. System.out.println("----基本用法----");
  8. DecimalFormat formatter = new DecimalFormat("#.###");
  9. System.out.println("#.###");
  10. System.out.println(formatter.format(piD));
  11. System.out.println(formatter.format(piF));
  12. System.out.println();
  13. formatter.applyPattern("0.00000");
  14. System.out.println("0.00000");
  15. System.out.println(formatter.format(piD));
  16. System.out.println(formatter.format(piF));
  17. System.out.println();
  18. //金钱格式
  19. System.out.println("----金钱格式----");
  20. formatter.applyPattern("#,###,###");
  21. System.out.println("#,###,###");
  22. System.out.println(formatter.format(1300));
  23. System.out.println(formatter.format(123467898));
  24. System.out.println();
  25. formatter.applyPattern("'$'#,###,###");
  26. System.out.println("'$'#,###,###");
  27. System.out.println(formatter.format(1300));
  28. System.out.println(formatter.format(20000));
  29. System.out.println();
  30. //科学计数法
  31. System.out.println("----科学计数法----");
  32. formatter.applyPattern("#.#####E0");
  33. System.out.println("#.#####E0");
  34. System.out.println(formatter.format(299792458));
  35. formatter.applyPattern("00.####E0");
  36. System.out.println("00.####E0");
  37. System.out.println(formatter.format(299792458));
  38. System.out.println();
  39. System.out.println("----嵌入文本----");
  40. formatter.applyPattern("嵌入文本:#.#####E0");
  41. System.out.println("嵌入文本:#.#####E0");
  42. System.out.println(formatter.format(299792458));
  43. System.out.println();
  44. System.out.println("----以百分比方式计数----");
  45. formatter.applyPattern("#.##%");
  46. System.out.println("#.##%");
  47. System.out.println(formatter.format(0.12));
  48. System.out.println();
  49. }
  50. }

输出结果:
  1. ----基本用法----
  2. #.###
  3. 3.142
  4. 3.142
  5. 0.00000
  6. 3.14159
  7. 3.14159
  8. ----金钱格式----
  9. #,###,###
  10. 1,300
  11. 123,467,898
  12. '$'#,###,###
  13. $1,300
  14. $20,000
  15. ----科学计数法----
  16. #.#####E0
  17. 2.99792E8
  18. 00.####E0
  19. 29.9792E7
  20. ----嵌入文本----
  21. 嵌入文本:#.#####E0
  22. 嵌入文本:2.99792E8
  23. ----以百分比方式计数----
  24. #.##%
  25. 12%








【Java数据格式化】使用DecimalFormat 对Float和double进行格式化的更多相关文章

  1. 如果需要精确的答案,请避免使用float和double

    Java中的简单浮点数类型float和double不能够进行运算.不光是Java,在其它很多编程语言中也有这样的问题.在大多数情况下,计算的结果是准确的,但是多试几次(可以做一个循环)就可以试出类似上 ...

  2. Java中浮点型数据Float和Double进行精确计算的问题

    Java中浮点型数据Float和Double进行精确计算的问题 来源  https://www.cnblogs.com/banxian/p/3781130.html 一.浮点计算中发生精度丢失     ...

  3. 14、Java中用浮点型数据Float和Double进行精确计算时的精度问题

    一.浮点计算中发生精度丢失 大概很多有编程经验的朋友都对这个问题不陌生了:无论你使用的是什么编程语言,在使用浮点型数据进行精确计算时,你都有可能遇到计算结果出错的情况.来看下面的例子. // 这是一个 ...

  4. ☕【Java实战系列】「技术盲区」Double与Float的坑与解决办法以及BigDecimal的取而代之!

    探究背景 涉及诸如float或者double这两种浮点型数据的处理时,偶尔总会有一些怪怪的现象,不知道大家注意过没,举几个常见的栗子: 条件判断超预期 System.out.println( 1f = ...

  5. java float、double精度研究(转)

    在java中运行一下代码System.out.println(2.00-1.10);输出的结果是:0.8999999999999999很奇怪,并不是我们想要的值0.9 再运行如下代码:System.o ...

  6. Java数据类型和MySql数据类型对应一览

    类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述             VARCHAR L+N VARCHAR java.lang.String 12   CHAR N ...

  7. Java SE基础部分——常用类库之NumberFormat(数字格式化)

    数字格式化常用方法:DecimalFormat和NuberFormat. //2016060524 数字格式化学习 //数字格式化 两种方法 一种直接使用NumberFormat,另一种Decimal ...

  8. Java数据类型转换浅析

    Java数据类型转换分为两种:自动类型转换和强制类型转换. 数据类型转换的关键是数据类型相应的表数范围大小 1.自动类型转换: 概念:小范围数据类型会自动转化成大范围数据类型 实例: int a=10 ...

  9. 关于 BigDecimal处理float、double数据

    Big Decimal 在java中,对于float与double中的数据,总会因为精度问题而丢失数据的准确性,也就是说对于两者所处理的得到的值是无限接近于那个数,而并非一个精确数字,而对于电商中所涉 ...

随机推荐

  1. attr和prop

    <div class="content-item active"> <table class="table"> <thead> ...

  2. Java 概述

    一 Java 程序的种类 1)Java 小应用程序(Java Applet) — 在Web浏览器中运行(内嵌Java虚拟机) —特定标记 <APPLET CODE="HelloWorl ...

  3. PDF 补丁丁 0.4.3.1518 测试版发布:书签编辑器新增升级书签功能、优化PDF文档阅览器

    新的 PDF 补丁丁测试版上线啦! 新版本增加了升级书签的功能(见工具栏的“←”按钮),可以方便地将下级书签升级为上级书签. 另外,新版本还增强了书签编辑器功能中的 PDF阅读器,从之前的单页阅读模式 ...

  4. C#将字符串中间部分替换为*号

    在做商城评价的时候,为了显示评价的真实性同时保护客户的隐私,我们将用户昵称中间部分替换为*(如果是单字则替换为* 两个字符串第二位字符串替换为*)如下图 方法如下: /// <summary&g ...

  5. numtoyminterval函数——数字转换函数

      numtoyminterval函数——数字转换函数 ----转至51CTO 水滴的博客  语法:NUMTOYMINTERVAL ( n , 'char_expr' )              c ...

  6. PHP 面向对象编程(2)

    一些内建方法: class Person { public $isAlive = true; function __construct($name) { //这里我们创建了一个name的属性 $thi ...

  7. centos下载jdk

    wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com% ...

  8. Spring之JDBC模板jdbcTemplate

    要使用Jdbctemplate 对象来完成jdbc 操作.通常情况下,有三种种方式得到JdbcTemplate 对象.           第一种方式:我们可以在自己定义的DAO 实现类中注入一个Da ...

  9. win7 下设置时间格式为yyyy-MM-dd 格式无效的解决方法

    部分win7 64位机器,在时间区域部分设置了时间格式为:yyyy-MM-dd后程序和数据库里面还是原来默认的yyyy/MM/dd格式 打开注册表,搜索 yyyy/MM/dd ,修改为yyyy-MM- ...

  10. SharePoint\O365 "See also"功能 and site feature 激活\禁用小节

    博客地址:http://blog.csdn.net/FoxDave 最近因为问题发现了SharePoint的"See also"功能,该功能是由SharePoint自动的Feat ...