java保留两位小数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java保留两位小数相关的知识,希望对你有一定的参考价值。

Java怎么实现保留两位小数,尤其是把一位和整数转化为两位小数。

public class Main 

public static void main(String[] args) 

float  f1 = 1234.5678f ;
int    f2 = 99900 ;

String f3 = String.format("x=%.2f, y=%.3f", 100.22222f, 200.33333f);
String f4 = String.format("x=%.4f, y=%.5f", 100.22222f, 200.33333f);

System.out.printf("f1 = %.2f\\n", f1);
System.out.printf("f2 = %.2f\\n", (float)f2);
System.out.printf("f3 = \\"%s\\"\\n", f3);
System.out.printf("f4 = \\"%s\\"\\n", f4);


输出:

f1 = 1234.57

f2 = 99900.00

f3 = "x=100.22, y=200.333"

f4 = "x=100.2222, y=200.33333"

参考技术A

网上回答基本上都是复制,最少都是2015年之前的,比较复杂,目前主流简单

已知一个float x=100.12314f;

保留2位数,则*/都是100;添加这一句后输出即可

x=(float)(int) (X*100)/100;

public class Main 
     
    public static void main(String[] args) 
         
        float x=100.12314f;
        
        x=(float)(int) (X*100)/100; 
        
        System.out.printf(x);
        
    

回答这个问题算是自己备忘一下,老是搜索到一大堆乱七八糟复杂化的博客

参考技术B

        

NumberFormat nf = NumberFormat.getNumberInstance();
        nf.setMaximumFractionDigits(2);
        System.out.println(nf.format(num//你要保留两位小数的数));

参考技术C double a = 0.001;
DecimalFormat b = new DecimalFormat("0.00");
System.out.println(b.format(a));
参考技术D 0.0用double类型来接受。。

java 两个数相除后四舍五入并保留两位小数

已经找到答案如12375除以1000:
int a=12375; double b=Math.round(aa/10d)/100d;
如果想保留一位小数并四舍五入:double b=Math.round(aa/100d)/10d;


1  double f = 3.1516;
BigDecimal b = new BigDecimal(f);
2   double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue()
new java.text.DecimalFormat("#.00").format(3.1415926)


3   double d = 3.1415926;
String result = String.format("%.2f", d);
// %.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型。


4   Math.round(5.2644555 * 100) * 0.01d;
//String.format("%0" + 15 + "d", 23) 23不足15为就在前面补0

1  方法点拨求近似数时:保留整数,表示精确到个位;保留一位小数,表示精确到十分位;保留两位小数,表示精确到百分位……
2、保留一位小数
如果保留一位小数,就要把第二、三位小数省略。
在表示近似数时,小数末尾的0不能去掉。 

3、保留整数部分:
 ≈1

参考技术A // 方式一:
double f = 3.1516;
BigDecimal b = new BigDecimal(f);
double f1 = b.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();

// 方式二:
new java.text.DecimalFormat("#.00").format(3.1415926);
// #.00 表示两位小数 #.0000四位小数 以此类推…

// 方式三:
double d = 3.1415926;
String result = String.format("%.2f", d);
// %.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型。

//方法四:
Math.round(5.2644555 * 100) * 0.01d;
//String.format("%0" + 15 + "d", 23) 23不足15为就在前面补0

以上是关于java保留两位小数的主要内容,如果未能解决你的问题,请参考以下文章

java 保留两位小数点

java中double保留两位小数

java计算结果 小数点后保留两位

java保留两位小数和js保留两位小数一致性研究

java使double保留两位小数的多方法 java保留两位小数

java、怎样简便的保留小数点后两位。