当前位置:首页 » 编程语言 » java四舍五入保留两位小数

java四舍五入保留两位小数

发布时间: 2023-02-18 05:49:13

java中保留两位小数并要求四舍五入的方法

doubled=2.345;
//格式化为String
Stringstr=String.format("%.2f",d);
System.out.println(str);
//如果需要数字,可以再d=Double.parseDouble(str)

//////////////
BigDecimalbd=newBigDecimal("2.345");//建议使用String参数
BigDecimalbd_half_even=bd.setScale(2,RoundingMode.HALF_EVEN);
BigDecimalbd_half_up=bd.setScale(2,RoundingMode.HALF_UP);
System.out.println(bd_half_even);
System.out.println(bd_half_up);
//HALF_EVEN,HALF_UP是两种不同的四舍五入机制
//BigDecimal默认使用HALF_EVEN
//HALF_UP的效果就是经典的四舍五入
//HALF_EVEN是最科学的四舍五入,但结果和HALF_UP可能会不同

Ⅱ java 两个数相除后四舍五入并保留两位小数有哪些方式


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

Ⅲ java四舍五入 保留两位小数

因为double型小数部分会在从二进制变十进制的类型变换中产生误差,所以x2会变成-3.80000000000003,如果要使输出四舍五入 保留两位小数,可以用String的format函数,方法如下:
System.out.println(String.format("%.2f", x1));
System.out.println(String.format("%.2f", x2));

Ⅳ Java几种常见的四舍五入的方法

下面给你介绍3种常见的四舍五入:

// 方式一:BigDecimal方式

double f = 3.1315;

BigDecimal b = new BigDecimal(new Double(f).toString);

double f1 = b.setScale(3, BigDecimal.ROUND_HALF_UP).doubleValue();

注意:这里一定不要直接使用new BigDecimal(double)的构造方法,而要使用new BigDecimal(new Double(1.1315).toString())的方式,不然会出现精确问题


// 方式二:DecimalFormat方式

//DecimalFormat默认采用了RoundingMode.HALF_EVEN这种类型,而且format之后的结果是一个字符串类型String

DecimalFormat df = new DecimalFormat("#.000");

System.out.println(df.format(new BigDecimal(1.0145)));//1.014

System.out.println(df.format(new BigDecimal(1.1315)));//1.132

// 方式三:

double d = 3.1415926;

String result = String.format("%.2f", d);

// %.2f %. 表示 小数点前任意位数 2 表示两位小数 格式后的结果为f 表示浮点型。

Ⅳ java中小数怎么四舍五入

java中如果精确一点的小数位比较多,类型建议使用BigDecimal,数据库存储用decimal类型。

.你的问题是想做四舍五入,并指定精确小数位数。BigDecimal..setScale(需要精确的小数位数例如:3, BigDecimal.ROUND_HALF_UP); 如图所示:如果想要确定小数位数,可以用正则取出需要精确的位数,再去传输需要精确的小数位数。

指定小数位数,并且都做四舍五入即可

热点内容
java返回this 发布:2025-10-20 08:28:16 浏览:590
制作脚本网站 发布:2025-10-20 08:17:34 浏览:885
python中的init方法 发布:2025-10-20 08:17:33 浏览:577
图案密码什么意思 发布:2025-10-20 08:16:56 浏览:763
怎么清理微信视频缓存 发布:2025-10-20 08:12:37 浏览:680
c语言编译器怎么看执行过程 发布:2025-10-20 08:00:32 浏览:1010
邮箱如何填写发信服务器 发布:2025-10-20 07:45:27 浏览:253
shell脚本入门案例 发布:2025-10-20 07:44:45 浏览:111
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:802
python股票数据获取 发布:2025-10-20 07:39:44 浏览:709