Java优雅的保留两位小数

简介: 可以使用Java中的DecimalFormat类来保留一个浮点数或双精度数的两位小数。

可以使用Java中的DecimalFormat类来保留一个浮点数或双精度数的两位小数。

下面是一个示例代码:

double number = 123.456789;
DecimalFormat decimalFormat = new DecimalFormat("#.##");
String formattedNumber = decimalFormat.format(number);
System.out.println(formattedNumber);

在这个示例中,我们首先定义一个双精度数变量number,其值为123.456789。

然后,我们创建一个DecimalFormat对象,并使用字符串"#.##"来定义格式化规则,即保留两位小数。

接着,我们使用DecimalFormat的format()方法来格式化number,并将结果存储在字符串formattedNumber中。

需要注意的是,DecimalFormat.format()方法返回的是一个字符串,而非一个数字。如果您需要在代码中进一步使用这个数字,需要先将其转换为double类型。例如,可以使用Double.parseDouble(formattedNumber)方法来实现转换。


DecimalFormat类是Java中的一个用于格式化数字的类。它可以按照指定的规则将数字格式化成特定的样式,例如保留几位小数、添加千位分隔符等。DecimalFormat类的常见用法包括:

  1. 格式化数字的小数位数:
double number = 123.456789;
   DecimalFormat decimalFormat = new DecimalFormat("#.##");
   String formattedNumber = decimalFormat.format(number);
   System.out.println(formattedNumber); // 输出:123.46
  1. 添加千位分隔符:
double number = 1234567.8901;
   DecimalFormat decimalFormat = new DecimalFormat("#,###.##");
   String formattedNumber = decimalFormat.format(number);
   System.out.println(formattedNumber); // 输出:1,234,567.89
  1. 设置数字的前缀和后缀:
double number = 123.456;
   DecimalFormat decimalFormat = new DecimalFormat("###,###.## USD");
   String formattedNumber = decimalFormat.format(number);
   System.out.println(formattedNumber); // 输出:123.46 USD
  1. 根据Locale设置千位分隔符和小数点:
double number = 1234567.8901;
   DecimalFormat decimalFormat = new DecimalFormat("#,###.##", DecimalFormatSymbols.getInstance(Locale.FRANCE));
   String formattedNumber = decimalFormat.format(number);
   System.out.println(formattedNumber); // 输出:1 234 567,89
相关文章
|
5月前
|
Java
java判断小数点后是否为0,是的话则取整,不是的话则保留
java判断小数点后是否为0,是的话则取整,不是的话则保留
180 0
|
7月前
|
Java
湖南大学Java编程题7. 输出较小数
湖南大学Java编程题7. 输出较小数
Zp
|
Java
Java中BigDecimal保留两位小数
Java中BigDecimal保留两位小数
Zp
668 0
|
3月前
|
Go Java 算法
Java每日一练(20230404) 买卖股票时机3、分数到小数、出现一次的数字2
Java每日一练(20230404) 买卖股票时机3、分数到小数、出现一次的数字2
25 0
Java每日一练(20230404) 买卖股票时机3、分数到小数、出现一次的数字2
|
9月前
|
Java
DecimalFormat的使用讲解数字格式化和demo(java小数控制,金额返回相关处理)
DecimalFormat的使用讲解数字格式化和demo(java小数控制,金额返回相关处理)
130 0
|
5月前
|
Java
Java对double值进行四舍五入,保留两位小数的几种方法
Java对double值进行四舍五入,保留两位小数的几种方法
|
11月前
|
存储 Java
java 将小数拆分为两部分+浮点型精度丢失问题
java 将小数拆分为两部分+浮点型精度丢失问题
137 0
|
Java
Java:String.format格式化浮点数保留指定小数位输出字符串
Java:String.format格式化浮点数保留指定小数位输出字符串
164 0
|
Java
Java:String.format实现double类型保留固定小数位
Java:String.format实现double类型保留固定小数位
105 0
|
Java BI
Java BigDecimal 在不设置数精度的情况下,去掉后面的小数点多余的0,有时候就是有这样
BigDecimal 在不设置数精度的情况下,去掉后面的小数点多余的0,有时候就是有这样
240 0