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

  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. angularjs简述

    1.MVC设计模式 MVC 是一种使用 MVC(Model View Controller 模型-视图-控制器)设计创建 Web 应用程序的模式 Model(模型)表示应用程序核心(比如数据库记录列表 ...

  2. [Android] Web Console: Uncaught TypeError: Object [object Object] has no method 'xxx'

    我们开发的产品,有一部分功能,需要在WebView中打开web页面,然后在web页面中通过js方法回调部分native的功能. 对于web回调native的开发方式,如果不了解的话,可以参考我以前的一 ...

  3. Stack的pop和push操作

    #include <stack> #include <cstdio> using namespace std; int main(){ stack<int> s; ...

  4. java 获取系统当前时间

    Calendar ca = Calendar.getInstance();      int year = ca.get(Calendar.YEAR);//获取年份      int month=ca ...

  5. WCF初探-1:认识WCF

    1.WCF是什么? WindowsCommunication Foundation(WCF)是由微软发展的一组数据通信的应用程序开发接口,它是.NET框架的一部分,由.NET Framework 3. ...

  6. iOS开发UI篇—Quartz2D简单使用(一)

    iOS开发UI篇—Quartz2D简单使用(一) 一.画直线 代码: // // YYlineview.m // 03-画直线 // // Created by apple on 14-6-9. // ...

  7. 如何使用DDMS

    Android DDMS如何使用? DDMS 的全称是Dalvik Debug Monitor Service,它为我们提供例如:为测试设备截屏,针对特定的进程查看正在运行的线程以及堆信息.Logca ...

  8. 请把不听话的【return】关进【class】这个笼子

    请把不听话的[return]关进[class]这个笼子 问:powershell 最垃圾的语句是什么?答:(函数中的)return #例子1:函数中的return有时会返回所有内容,而不是你想要的内容 ...

  9. 再议C++的性能

    最近在公司里的项目做的是性能优化,相关性能调优的经验总结也在前一篇文章里说了.这里再说一说和性能相关的东西.主要针对的是C++类库中常用的一些数据结构,比方说std::string.顺序容器(vect ...

  10. fifo write

    #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/types. ...