网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Java12的数字格式化介绍

本篇内容主要讲解“Java 12的数字格式化介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Java 12的数字格式化介绍”吧!

网站建设哪家好,找成都创新互联!专注于网页设计、网站建设、微信开发、小程序开发、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了合阳免费建站欢迎大家使用!

在Java 12中添加的 CompactNumberFormat 类。可以将数字(例如1000)格式化为" 1K"(短样式)或" 1000"(长样式)。

创建CompactNumberFormat实例

要获取语言环境的 CompactNumberFormat ,请使用 NumberFormat 给出的工厂方法之一。

NumberFormat fmt = NumberFormat.getCompactNumberInstance(new Locale("hi", "IN"), NumberFormat.Style.SHORT);

NumberFormat fmt = NumberFormat.getCompactNumberInstance( Locale.US, NumberFormat.Style.LONG);

自定义CompactNumberFormat实例

我们还可以创建自定义的数字格式,在其中可以定义如何使用CompactNumberFormat(String,DecimalFormatSymbols,String [])构造函数以较短的形式表示数字。

final String[] compactPatterns  = {"", "", "", "0k", "00k", "000k", "0m", "00m", "000m", "0b", "00b", "000b", "0t", "00t", "000t"}; 

final DecimalFormat decimalFormat = (DecimalFormat)NumberFormat.getNumberInstance(Locale.GERMANY);

final CompactNumberFormat customCompactNumberFormat   = new CompactNumberFormat( decimalFormat.toPattern(),                 
                                       decimalFormat.getDecimalFormatSymbols(),  
                                       compactPatterns);

数字格式示例

简单格式化   -  Java程序以紧凑数字格式格式化数字。

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

public class Main 
{
	public static void main(String[] args) 
	{
		NumberFormat fmt = NumberFormat
		        .getCompactNumberInstance(Locale.US, NumberFormat.Style.LONG);

		System.out.println( fmt.format(100) );
		System.out.println( fmt.format(1000) );
		System.out.println( fmt.format(10000) );
		System.out.println( fmt.format(100000) );

		NumberFormat fmtShort = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT);

		System.out.println( fmtShort.format(100) );
		System.out.println( fmtShort.format(1000) );
		System.out.println( fmtShort.format(10000) );
		System.out.println( fmtShort.format(100000) );
	}
}

程序输出。

100
1 thousand
10 thousand
100 thousand

100
1K
10K
100K

设置小数     -  设置数字的小数部分中允许的最小位数。默认情况下,小数部分设置为'0'位。

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

public class Main 
{
	public static void main(String[] args) 
	{
		NumberFormat fmt = NumberFormat.getCompactNumberInstance(Locale.US, NumberFormat.Style.SHORT);
		fmt.setMinimumFractionDigits(3);

		System.out.println( fmt.format(10000) );
		System.out.println( fmt.format(10012) );
		System.out.println( fmt.format(100201) );
		System.out.println( fmt.format(1111111) );
	}
}

程序输出。

10.000K
10.012K
100.201K
1.111M

数字解析示例

Java程序将紧凑数解析为长模式。

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

public class Main 
{
	public static void main(String[] args) throws Exception
	{
		NumberFormat fmt = NumberFormat
		        .getCompactNumberInstance(Locale.US, NumberFormat.Style.LONG);

		System.out.println( fmt.parse("100") );
		System.out.println( fmt.parse("1 thousand") );
		System.out.println( fmt.parse("10 thousand") );
		System.out.println( fmt.parse("100 thousand") );
	}
}

程序输出。

100
1000
10000
100000

到此,相信大家对“Java 12的数字格式化介绍”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!


标题名称:Java12的数字格式化介绍
分享路径:http://bjjierui.cn/article/jihcho.html

其他资讯