java - 在android Java中格式化 float

标签 java android string-formatting decimalformat

我想按照以下模式将 float 格式化为字符串

X.XX -> 当小数点前只有 1 位数字时,则为 2 位小数精度

XX.XX -> 当小数点前有 2 位数字时,则为 2 位小数精度

XXX.X -> 当小数点前有 3 位数字时,小数点精度为 1

XXXX.. -> 当小数点前有 4 位或更多位时,不应显示小数点

如何在 Java 中执行此操作?

最佳答案

只是使用 Decimal Format 的简单代码可能会有所帮助

float f=  24.56f;//Replace with your float number
    int i = (int)f;
    if(i<100)
        System.out.println(new DecimalFormat("#.##").format(f));//This functions will round the last bits also i.e. greater then 4 will increase the number preceding also 
    else if( i < 1000)
        System.out.println(new DecimalFormat("#.#").format(f));
    else 
        System.out.println(new DecimalFormat("#").format(f));

关于java - 在android Java中格式化 float ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34019999/

相关文章:

java - 无法通过 AssetManager - libgdx 从 zip 存档加载 TextureAtlas

c - 如何使用格式说明符设置字符串的字段宽度?

java.lang.IllegalStateException : The content of the adapter has changed but ListView did not receive a notification in android Studio

java - 无法使用 java InetAddress 找到主机,但可以使用 curl 找到主机

java - Jersey:执行前和执行后 Hook ?

PHP - 在字符串中间添加字符(从末尾开始)

c# - 如何从字符串内容中删除一些特殊的单词?

java - 在 URL 处的 JSON 文件中查找某些字段

java android listView设置不同的背景颜色和selecteditem

android - Android 中使用小动画更改 EditText 的文本