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

  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. Monkey环境配置

    安卓APP想要测试稳定性,monkey是最佳选则. 首先搭建monkey的运行环境 在Windows下基于SDK 1.下载SDK for Windows 解压:android-sdk-windows ...

  2. .NET日常总结

    属性: AccepButton:按钮在按回车键时执行(确定). CancleButton:按钮在按ESC时执行(取消). MinimizeBox:用于设置窗体上是否会出现最小化按钮. Maximize ...

  3. canvas初体验之基本线条

    有的时候我们打开一些网站,可以看到背景是闪烁的星空或者是有一些可以与鼠标交互的线条等等,此酷炫的效果就是用到了html5的canvas效果. 首先来认识一下h5新增的标签的写法<canvas&g ...

  4. hdu----1686 Oulipo (ac自动机)

    Oulipo Time Limit: 3000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  5. QT打开ROS工作空间时遇到的问题和解决方法

    之前一直觉得不用IDE写程序看着好像我很能的样子. 其实就相当于工业时代我还钻木取火并且告诉别人你们用打火机根本不知道火被点燃的过程是怎样的. 因为这个技能并非人人都会,就可以拿出去到处臭屁 好了, ...

  6. 树(二)——二叉树

    目录 本章主要讲解内容为: 树的非递归遍历算法,两种版本 树的扩展前缀以及前缀中缀构建方法 源码 btree.cpp btree.h 基础知识 一.定义 二叉树的递归定义:二叉树是每个结点最多含有两棵 ...

  7. Java之美[从菜鸟到高手演变]之设计模式

    设计模式(Design Patterns) ——可复用面向对象软件的基础 设计模式(Design pattern)是一套被反复使用.多数人知晓的.经过分类编目的.代码设计经验的总结.使用设计模式是为了 ...

  8. JQ弹出框移动-插件分享~~~

    <script src="js/jQuery8.3.js" type="text/javascript"></script> <s ...

  9. iOS开发网络篇—发送json数据给服务器以及多值参数

    iOS开发网络篇—发送json数据给服务器以及多值参数 一.发送JSON数据给服务器 发送JSON数据给服务器的步骤: (1)一定要使用POST请求 (2)设置请求头 (3)设置JSON数据为请求体 ...

  10. MySQL删除表数据

    原文请点这里 在MySQL中有两种方法可以删除数据,一种是DELETE语句,另一种是TRUNCATE TABLE语句.DELETE语句可以通过WHERE对要删除的记录进行选择.而使用TRUNCATE ...