繁体   English   中英

字符串格式加倍至00,00-Java

[英]String Format double to 00,00 - Java

我正在尝试将格式设置为00,00

9,21341> 09,21

10,4312> 10,43

1,01233> 01,01

42,543> 42,54

目前,我正在使用String.Format来四舍五入

String.format("%s %02.2f - ", example.getName(), example.getDouble());

如果小于10,则不会在双精度数前面添加额外的零。

Formatter类(它是String.format方法的基础)使用“字段”的概念进行操作。 也就是说,每个字段都有特定的大小,可以填充。 在您的情况下,您可以使用%05.2f类的%05.2f ,这意味着一个大小为5的字段,在该点之后的2个符号用左边的零填充。

但是,如果您需要一些细粒度的数字格式,通常您要寻找的是DecimalFormat类,它使您可以轻松自定义数字的表示方式。

示例( ideone链接 ):

import java.util.*;
import java.lang.*;
import java.io.*;
import java.text.*;

class Ideone
{
    public static void main (String[] args) throws java.lang.Exception
    {
        DecimalFormat decimalFormat = new DecimalFormat("#00.00");
        System.out.println(decimalFormat.format(0.99f));
        System.out.println(decimalFormat.format(9.99f));
        System.out.println(decimalFormat.format(19.99f));
        System.out.println(decimalFormat.format(119.99f));
    }
}

输出:

00.99
09.99
19.99
119.99

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM