「java金额保存两位小数」java运算保留两位小数

博主:adminadmin 2023-01-28 09:54:07 330

今天给各位分享java金额保存两位小数的知识,其中也会对java运算保留两位小数进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

java金额转换的问题,想要保留小数点后两位,这样会下标越界该怎么改?

哈?你的程序好复杂,我都没看明白

BigDecimal直接设置小数并设置四舍五入的方式不就好了吗?

public static void main(String[] args) {

BigDecimal b0 = new BigDecimal("123");

BigDecimal b1 = new BigDecimal("1234");

BigDecimal b2 = new BigDecimal("12345");

BigDecimal b3 = new BigDecimal("123456");

BigDecimal b4 = new BigDecimal("1234567");

BigDecimal b5 = new BigDecimal("12345678");

BigDecimal b6 = new BigDecimal("123.45678");

BigDecimal b7 = new BigDecimal("123.45678");

System.out.println(b0.divide(new BigDecimal(100), 2, RoundingMode.HALF_UP));

System.out.println(b1.divide(new BigDecimal(100), 2, RoundingMode.HALF_UP));

System.out.println(b2.divide(new BigDecimal(1000), 2, RoundingMode.HALF_UP));

System.out.println(b3.divide(new BigDecimal(10000), 2, RoundingMode.DOWN));

System.out.println(b4.divide(new BigDecimal(10000), 3, RoundingMode.HALF_UP));

System.out.println(b5.divide(new BigDecimal(100000), 3, RoundingMode.DOWN));

System.out.println(b6.setScale(2, RoundingMode.HALF_UP));

System.out.println(b7.setScale(2, RoundingMode.DOWN));

}

其中,setScale即设置小数位数是多少,RoundingMode表示四舍五入的方式,常用的就是HALF_UP表示四舍五入,DOWN表示直接舍掉,还有些其他的你查一下RoundingMode就行。

运行结果:

java 如何保留数据后两位小数

保留两位小数,也就是保留到百分位,要看千分位上的数,如果千分位上的数大于等于5,就向百分位上进一位,如果千分位上的数小于5,就舍去。

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

System.out.println(Double.parseDouble(new

DecimalFormat("#.##").format(a))+ "  " +

Double.parseDouble(new DecimalFormat("#.##").format(b)));

把输出语句换成这个就行了。

若出现这种问题,import java.text.DecimalFormat;

你没导这个包,导入就可以了。

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"

java金额保存两位小数的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java运算保留两位小数、java金额保存两位小数的信息别忘了在本站进行查找喔。