数字处理类
参考资料:《Java从入门到精通》/明日科技编著. 4版. 北京:清华大学出版社,2016
一、数字格式化
数字的格式化在解决实际问题时非常普遍,如超市商品的价格,需要保留两位有效数字。在Java中使用java.text.DecimalFormat类对浮点型数据进行格式化操作,其中浮点型数据包括double型和float型,
DecimalFormat是numberFormat的一个子类,用于格式化十进制数字,它可以将一些数字格式化为整型、浮点型、百分数等。
DecimalFormat类可以为要输出的数字加上单位或者控制数字的精度。
通过DecimalFormat类中的applyPattern()方法可以实现数字格式化。
import java.text.DecimalFormat;
public class DecimalFormatSimpleDemo {
static public void SimpleFormat(String pattern, double value){
//创建DecimalFormat类对象,并设置格式化模式
DecimalFormat decimalFormat = new DecimalFormat(pattern);
//将传入的参数进行格式化
String output = decimalFormat.format(value);
//打印格式化的结果
System.out.println(value + " " + pattern + " " + output );
}
static public void UseApplyPatternMethodFormat(String pattern, double value){
//创建DecimalFormat类对象
DecimalFormat decimalFormat = new DecimalFormat();
//调用applyPattern()方法设置格式化模式
decimalFormat.applyPattern(pattern);
//将传入的参数进行格式化
String output = decimalFormat.format(value);
//打印格式化的结果
System.out.println(value + " " + pattern + " " + output);
}
public static void main(String[] args) {
//调用SimpleFormat()方法,并传入格式模板以及需要进行格式化的数字
SimpleFormat("###,###.##", 123345.2345);
SimpleFormat("000,000,000.##kg", 12321.234);
//调用UseApplyPatternMethodFormat()方法,并传入格式模板以及需要进行格式化的数字
UseApplyPatternMethodFormat("#.##%", 4.234);
UseApplyPatternMethodFormat("0.00u2030", 0.673);
}
}
输出结果:
123345.2345 ###,###.## 123,345.23
12321.234 000,000,000.##kg 000,012,321.23kg
4.234 #.##% 423.4%
0.673 0.00‰ 673.00‰
上述代码中,第一行使用import关键字将java.text.DecimalFormat这个类包含进来,即告知系统下面的代码将用到DecimalFormat这个类。
在DecimalFormat类中,除了使用格式化模板来格式化数字之外,还可以使用一些特殊的方法对数字进行格式化,如下所示:
import java.text.DecimalFormat;
public class DecimalMethod {
public static void main(String[] args) {
//创建DecimalFormat类对象
DecimalFormat decimalFormat = n