java.text.NumberFormat简单使用
原文地址:http://blog.sina.com.cn/s/blog_81851a660100smh0.html
Java中API类NumberFormat提供了货币格式化,百分比格式化和数值格式化。需要语句import java.text.NumberFormat;
一、货币格式化
currency 名,货币,流通。Instance名。例子,情况。Locale名,地方。Format名,动。格式。
1、getCurrencyInstance()。静态方法,建立一个NumberFormat类的对象并返回引用,该引用指定货币格式为系统预设的货币格式。举例如下:
import java.text.NumberFormat;
public class NumberFormat001 {public static void main(String[] args){NumberFormat nf=NumberFormat.getCurrencyInstance();System.out.println(nf.format(123.658));}//main end}
运行结果:¥123.56
2、getCurrencyInstance(Locale) 。静态方法,建立一个NumberFormat类的对象,并返回引用,该引用的货币格式由Locale指定。Locale类在java.util包中。举例如下:
import java.text.NumberFormat;import java.util.Locale;import java.util.Locale;public class NumberFormat002 {public static void main(String[] args){//Locale locale=Locale.US;NumberFormat nf=NumberFormat.getCurrencyInstance(Locale.US);System.out.println(nf.format(1236.258));}//main end}//class end
运行结果:$1,236.26
3、format(anyNumberType)。返回由NumberFormat的静态方法所指定的输出格式,这个格式由字符串来表达。参数可以是数值类或者BigDecimal对象。不再举例。
二、百分比格式化
Percent名,百分数。Fraction名,片断,分数。Digit名,阿拉伯数字。Minimum最小的。Maximum最大的。
方法:
1、getPercentInstance()。静态方法,创建一个NumberFormat类的对象并返回其引用。该对象指定百分比格式为系统预设格式。
2、getPercentInstance(Locale)。静态方法,创建一个NumberFormat类的对象并返回引用。该对象的百分比格式由Locale来指定。
3、format(anyNumberType)。返回由NumberFormat的静态方法所指定的输出格式,这个格式由字符串来表达。参数可以是数值类型或者;BigDecimal对象。
举例如下:
import java.text.NumberFormat;import java.util.Locale;public class NumberFormat003 {public static void main(String[] args){double d=123.6958;NumberFormat nf=NumberFormat.getPercentInstance();System.out.println(nf.format(d));NumberFormat nf1=NumberFormat.getPercentInstance(Locale.CANADA);System.out.println(nf1.format(d));}//main end}//class end
运行结果:
12,370%
12,370%
4、setMinimumFractionDigits(int)设置最少小数点位数
5、setMaximumFractionDigits(int)设置最多小数位数。
举例如下:
import java.text.NumberFormat;import java.util.Locale;public class NumberFormat003 {public static void main(String[] args){double d=123.6958;NumberFormat nf=NumberFormat.getPercentInstance();nf.setMinimumFractionDigits(4);//不足4位小数,则以0补位。System.out.println(nf.format(d));nf.setMaximumFractionDigits(1);//最多保留1位小数。System.out.println(nf.format(d));NumberFormat nf1=NumberFormat.getPercentInstance(Locale.CANADA);System.out.println(nf1.format(d));nf1.setMaximumFractionDigits(1);//最多保留1位小数,如无小数不补0。System.out.println(nf1.format(d));System.out.println(nf1.format(258));}//main end}//class end
运行结果:
12,369.5800%
12,369.6%
12,370%
12,369.6%
25,800%
三、数值格式化
方法:getNumberInstance();getNumberInstance(Locale);format(anyNumberType);setMinimumFractionDigits(int);setMaximumFractionDigits(int)。方法解释与百分比格式化类似,不再详述。举例如下:
import java.text.NumberFormat;import java.util.Locale;public class NumberFormat004 {public static void main(String[] args){double d=123456.3698;NumberFormat nf=NumberFormat.getNumberInstance();System.out.println(nf.format(d));nf.setMinimumFractionDigits(4);System.out.println(nf.format(d));NumberFormat nf01=NumberFormat.getNumberInstance(Locale.US);System.out.println(nf01.format(d));nf01.setMaximumFractionDigits(1);System.out.println(nf01.format(d));}//main end}//class end
运行结果:
123,456.3698
123,456.37
123,456.4
四、用NumberFormat类的子类DecimalFormat来完成。
import java.text.DecimalFormat;
DecimalFormat提供了许多用来规定数字格式的模式字符串,进行对数字的格式化处理。本文只讨论常用的几种。
1、“0”——表示一位数值;如没有,显示0。如“0000.0000”,整数位>4,按实际输出,<4前面补0,凑足4位,多余小数四舍五入。
2、“#”——表示任何位数的整数。如没有,则不显示。在小数点模式后使用,只表示一位小数;四舍五入。如:
# 无小数,小数部分四舍五入。
.# 整数部分不变,一位小数,四舍五入。
.## 整数部分不变,二位小数,四舍五入。
3、“.”——表示小数点模式。
4、“,”与模式“0”一起使用,表示逗号。举例如下:
import java.text.DecimalFormat;import java.text.NumberFormat;public class DecimalFormat001 {public static void main(String[] args){double d1=123456.36987,d2=12.3698;DecimalFormat nf=new DecimalFormat("0000.000");System.out.println("d1="+nf.format(d1)+" d2="+nf.format(d2));//12345.370 0012.370nf=new DecimalFormat("#");System.out.println("d1="+nf.format(d1));//123456nf=new DecimalFormat(".#");System.out.println("d1="+nf.format(d1)); //123456.4nf=new DecimalFormat(".###");System.out.println("d1="+nf.format(d1)); //123456.370nf=new DecimalFormat("0000,0000.0000");System.out.println("d1="+nf.format(d1));//123,456.3699}//main end}//class
java.text.NumberFormat简单使用相关推荐
- java.text.NumberFormat使用方法
NumberFormat 是全部数值格式的抽象基类. 该类提供了格式化和分析数值的接口. NumberFormat 也提供了确定 哪个语言环境具有数值格式以及它们名字的方法. package com. ...
- java搜索引擎lucene_简单lucene搜索实现(搜索引擎)
首先下载lucene相关jar包,这里就不多说,自己网上找 在eclipse下建立web工程luceneTest 将jar包加载到你的web工程里面 新建类Index.java,代码如下: impor ...
- Java的NumberFormat介绍
--------------------------------------------------------------- java.text.NumberFormat类有三个方法可以产生下列数据 ...
- java中NumberFormat 、DecimalFormat的介绍及使用,java数字格式化,BigDecimal数字格式化
文章目录 前言 一.NumberFormat 1.概述 2.实例化方法 3.货币格式化 4.百分比格式化 5.NumberFormat的坑 5.1.不同的格式化对象处理相同数值返回结果不同 问题 源码 ...
- java.text._Java.text
1. 描述 提供以与自然语言无关的方式来处理文本.日期.数字和消息的类和接口.这意味着所编写的主程序或 applet 是与语言无关的,并且它可以依靠独立的.动态链接的本地化资源.这实现了随时为新本地化 ...
- Java 多态的简单介绍.
作为面向对象三大知识点之一, 多态可以讲是相对最难理解那个. 本人在这里也是简单分析一下. 一, 多态的定义. 面向对象编程中, 1个超类的引用可以指向属于超类的对象, 也可以根据需要指向超类的派生 ...
- 使用Java实现的简单的计算器
package calculate; /*** @author Wayne;* @time 2014年7月14日;* @project java计算器2.0;*/import java.awt.*; ...
- 用java写一个日历_使用JAVA写一个简单的日历
JAVA写一个简单的日历 import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDa ...
- Java笔记-Semaphore简单应用实例
这个Semaphore和QSemaphore使用和原理一模一样. 这里简单写了个例子,开了10个线程去拿邻界资源,资源只有一个,拿到后要进行5s的业务错了,使用Semaphore,如果此资源被占用,那 ...
最新文章
- Javascript - 栈 和 单链表
- 情商(实践版本,丹尼尔.戈尔曼)---阅读记录
- Git 分支 - 分支简介
- 计算机组成原理课程设计报告 给出指令执行流程 add(二进制加法),《计算机组成原理》课程设计报告材料...
- CORS——跨域请求那些事儿
- Ubuntu16.04安装JDK1.8
- mysql的join语句使用_MySQL开发技巧——如何正确使用Join语句
- thinkphp 二级域名绑定模块,导致设置的路由被多域名共用的问题解决方案
- linux 查看真实路径-软连接
- 超赞!聊聊WEB APP、HYBRID APP与NATIVE APP的设计差异
- IScroll5 参数说明和调用方法
- c语言飞机大战游戏素材,jQuery飞机大战游戏
- php压缩解压zip文件夹,php利用ZipArchive类实现文件压缩与解压
- Java集合中的retainAll()方法和removeAll()方法
- 21种网页在线客服代码实例演示
- 程序员高效率办公软件(推荐)。
- clusters(clusters)
- 高级Android开发进阶之路,你需要掌握的几个关键技术!
- c语言程序设计臧,臧学莲
- 周杰伦《说好不哭呢》QQ音乐评论的可视化分析
热门文章
- 加泰罗尼亚理工大学 计算机 排名,2020年西班牙巴塞罗那加泰罗尼亚理工大学有哪些优势专业...
- 更改eclipse默认在C盘下生成的.p2和.m2
- 精雕细琢——全方位解析单例模式
- 赛马网基本算法之--公交车乘客
- Java类变量的初始化
- 网络工程(计算机网络)毕业论文+PPT【中学实验楼综合布线和无线网络规划】
- Cocos2d-x 3.2 大富翁游戏项目开发-第二十三部分 购买彩票
- 【目标检测】36、OTA: Optimal Transport Assignment for Object Detection
- 普适各类IoT场景,润和HH-SLNPT100开发板通过OpenHarmony兼容性
- 关于路径规划问题的详细总结(千字长文)