DecimalFormat 是 NumberFormat 的一个具体子类,用于格式化十进制数字。该类设计有各种功能,使其能够解析和格式化任意语言环境中的数,包括对西方语言、阿拉伯语和印度语数字的支持。它还支持不同类型的数,包括整数 (123)、定点数 (123.4)、科学记数法表示的数 (1.23E4)、百分数 (12%) 和金额 ($123)。所有这些内容都可以本地化。
要获取具体语言环境的 NumberFormat(包括默认语言环境),可调用 NumberFormat 的某个工厂方法,如 getInstance()。通常不直接调用 DecimalFormat 的构造方法,因为 NumberFormat 的工厂方法可能返回不同于 DecimalFormat 的子类。
// Print out a number using the localized number, integer, currency,
// and percent format for each locale
Locale[] locales = NumberFormat.getAvailableLocales();
double myNumber = -1234.56;
NumberFormat form;
for (int j=0; j<4; ++j) {
System.out.println("FORMAT");
for (int i = 0; i < locales.length; ++i) {
if (locales[i].getCountry().length() == 0) {
continue; // Skip language-only locales
}
System.out.print(locales[i].getDisplayName());
switch (j) {
case 0:
form = NumberFormat.getInstance(locales[i]); break;
case 1:
form = NumberFormat.getIntegerInstance(locales[i]); break;
case 2:
form = NumberFormat.getCurrencyInstance(locales[i]); break;
default:
form = NumberFormat.getPercentInstance(locales[i]); break;
}
if (form instanceof DecimalFormat) {
System.out.print(": " + ((DecimalFormat) form).toPattern());
}
System.out.print(" -> " + form.format(myNumber));
try {
System.out.println(" -> " + form.parse(form.format(myNumber)));
} catch (ParseException e) {}
}
}
new java.text.DecimalFormat("#.00").format(sp.area())这样格式化以后就是保留两位小数了
DecimalFormat df = new DecimalFormat("0.00");
DecimalFormat df = new DecimalFormat("#.00");
没有区别 但如果是0.## 和 0.00的话就可以看出区别了 假设要转换的数字是5 使用0.00转换后结果是5.00 而如果是0.##结果就是5
分享到:
相关推荐
Java.text.DecimalFormat类十进制格式化方法详解 ...Java.text.DecimalFormat类提供了灵活的十进制格式化方式,满足了大多数十进制格式化的需求,使用格式化模板和格式化规则可以实现各种复杂的十进制格式化操作。
java.text.DecimalFormat用法详解 Java中的java.text.DecimalFormat类提供了格式化数字的功能,通过指定pattern来控制数字的格式。下面将详细介绍DecimalFormat的用法和主要特征。 Pattern DecimalFormat的...
其中,`java.text`包是专门处理文本格式化、国际化和本地化的重要工具集,广泛用于日期、时间、数字、货币、数字格式化等方面。在这个包中,有许多关键的类和接口,例如`Format`、`NumberFormat`、`DateFormat`、`...
java.text.DecimalFormat df = new java.text.DecimalFormat("#.00"); df.format(你要格式化的数字); ``` 例如: ```java String result = new java.text.DecimalFormat("#.00").format(3.1415926); ``` 方式三:...
本文将详细介绍如何利用Java中的`java.text.DecimalFormat`和`java.text.NumberFormat`类来处理小数点、百分比等格式的数值。 #### 一、`java.text.DecimalFormat`类 `DecimalFormat`是`NumberFormat`的一个子类,...
java 注册码生存文件 public class MyEclipseGen { private static final String LL = "Decompiling this copyrighted software is a violation... java.text.NumberFormat nf = new java.text.DecimalFormat("000");
java.text.DecimalFormat df = new java.text.DecimalFormat("#.00"); String formatted = df.format(3.1415926); // 输出结果为:"3.14" System.out.println(formatted); ``` 在上面的例子中,`"#.00"`表示保留两...
import java.text.DecimalFormat; public class NumberUtil { public static String formatDecimal(double number) { DecimalFormat formatter = new DecimalFormat("#,###.##"); return formatter.format...
java.text.DecimalFormat df = new java.text.DecimalFormat("#.00"); String result = df.format(3.1415926); ``` **解析**: - `new java.text.DecimalFormat("#.00")` 创建了一个`DecimalFormat`对象,其中`"#.00...
`DecimalFormat`是`java.text`包中的一个类,专门用于数字的格式化。通过创建`DecimalFormat`对象并设置模式,我们可以轻松地将double值转换为具有特定小数位数的字符串。 ```java import java.text....
若要控制输出的精度,可以使用`java.text.DecimalFormat`类。创建一个`DecimalFormat`实例,设置所需的格式模式,如`"###,##0.00"`表示保留两位小数。然后使用`format()`方法将一个`double`值转换为字符串。例如,`...
System.out.println(new java.text.DecimalFormat("0.00").format(4.025)); ``` 输出是 4.02。 BigDecimal: 在《Effective Java》这本书中也提到这个原则,float 和 double 只能用来做科学计算或者是工程计算,...
import java.text.DecimalFormat; public class Calculation { public static final DecimalFormat df = new DecimalFormat("######0.00"); /** * @methodName format2point * @desc 保留两位小数点 * @param...
对于IP地址,我们可以创建一个自定义的格式模型,例如使用`java.text.DecimalFormat`配合正则表达式来验证输入。 以下是创建这样一个输入框的基本步骤: 1. 导入必要的库: ```java import javax.swing.*; import ...
本篇文章将详细介绍如何利用Java中的`java.text.DecimalFormat`类来实现数字到货币格式的转换,并探讨其背后的工作原理与使用技巧。 #### 1. 什么是`DecimalFormat` `DecimalFormat`是Java中用于格式化和解析数字...
在 Java 中,我们可以使用 DecimalFormat 来格式化数字,例如: ```java import java.text.*; import java.util.*; public class DecimalFormatDemo { public static void main(String args[]) { DecimalFormat ...
例如,以下代码展示了如何使用`DecimalFormat`格式化数字: ```java DecimalFormat df = new DecimalFormat("#,###.##"); double number = 1234567.89; String formattedNumber = df.format(number); ``` 这里,`#...
import java.text.DecimalFormat; import javax.swing.BorderFactory; import javax.swing.ButtonGroup; import javax.swing.JButton; import javax.swing.JCheckBoxMenuItem; import javax.swing.JFrame;
总之,使用`java.text.DecimalFormat`类来格式化`double`类型的数值是一种既简单又高效的方法,它不仅可以确保数值的格式符合预期,还可以适应不同的国际化需求。通过合理设置模式字符串,可以灵活地控制输出数字的...