Java数字、货币格式化_JAVA_编程开发_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
您所在的位置: 程序员俱乐部 > 编程开发 > JAVA > Java数字、货币格式化

Java数字、货币格式化

 2013/12/12 16:09:06  devinhu  程序员俱乐部  我要评论(0)
  • 摘要:转:http://www.cnblogs.com/archie2010/archive/2010/12/17/1909469.htmlpackagecom.tq365.util;importjava.text.NumberFormat;importjava.util.Locale;publicclassFormatTest{publicstaticvoidmain(String[]args){//无格式化输出doubled=10000.0/3.0;System.out.println
  • 标签:Java

转:http://www.cnblogs.com/archie2010/archive/2010/12/17/1909469.html

?

package com.tq365.util;

import java.text.NumberFormat;
import java.util.Locale;

public class FormatTest {

??? public static void main(String[] args) {
??????? //无格式化输出
??????? double d=10000.0/3.0;
??????? System.out.println("无格式化输出:"+d);
???????
??????? NumberFormat numberFormat=NumberFormat.getNumberInstance();
??????? //保留四位小数
??????? //numberFormat.setMaximumFractionDigits(4);
??????? //小数点前六位数字
??????? //numberFormat.setMinimumIntegerDigits(6);
??????? //System.out.println(numberFormat.format(d));
??????? //本地默认格式3,333.333
??????? System.out.println(numberFormat.format(d));
???????
??????? //使用本地默认格式输出货币值
??????? NumberFormat? currentFormat=NumberFormat.getCurrencyInstance();
??????? //¥3,333.33
??????? System.out.println("本地默认格式输出货币值:"+currentFormat.format(d));
???????
??????? //使用本地默认格式输出百分数
??????? NumberFormat percentFormat=NumberFormat.getPercentInstance();
??????? System.out.println("本地默认格式输出百分数:"+percentFormat.format(d));
???????
??????? //使用美国货币输出形式
??????? NumberFormat currentFormatUS=NumberFormat.getCurrencyInstance(Locale.US);
??????? //$3,333.33
??????? System.out.println("美国货币输出形式:"+currentFormatUS.format(d));
???????
??? }
}

?

DecimalFormat

?

  1. import?java.text.DecimalFormat;??
  2. ???
  3. public?class?TestNumberFormat?{??
  4. ???
  5. ????public?static?void?main(String[]?args)?{??
  6. ????????double?pi?=?3.1415927;??//?圆周率??
  7. ????????//?取一位整数??
  8. ????????System.out.println(new?DecimalFormat("0").format(pi));??????//?3??
  9. ????????//?取一位整数和两位小数??
  10. ????????System.out.println(new?DecimalFormat("0.00").format(pi));???//?3.14??
  11. ????????//?取两位整数和三位小数,整数不足部分以?0?填补。??
  12. ????????System.out.println(new?DecimalFormat("00.000").format(pi));?//?03.142??
  13. ????????//?取所有整数部分??
  14. ????????System.out.println(new?DecimalFormat("#").format(pi));??????//?3??
  15. ????????//?以百分比方式计数,并取两位小数??
  16. ????????System.out.println(new?DecimalFormat("#.##%").format(pi));??//?314.16%??
  17. ???
  18. ????????long?c?=?299792458;?????//?光速??
  19. ????????//?显示为科学计数法,并取五位小数??
  20. ????????System.out.println(new?DecimalFormat("#.#####E0").format(c));???//?2.99792E8??
  21. ????????//?显示为两位整数的科学计数法,并取四位小数??
  22. ????????System.out.println(new?DecimalFormat("00.####E0").format(c));???//?29.9792E7??
  23. ????????//?每三位以逗号进行分隔。??
  24. ????????System.out.println(new?DecimalFormat(",###").format(c));???????//?299,792,458??
  25. ????????//?将格式嵌入文本??
  26. ????????System.out.println(new?DecimalFormat("光速大小为每秒?,###?米。").format(c));??
  27. ????}??
  28. }??

下面是自己的方式:

double dou = 150000/3.5;
System.out.println("原版:"+dou);

?

//每三位以逗号分隔,并保留2位小数

System.out.println(String.format("%1$,.2f", dou));

?

发表评论
用户名: 匿名