# BigDecimal round方法
时间:2020-02-23 14:41:14 来源:igfitidea点击:
BigDecimal的round方法用于基于MathContext设置的BigDecimal。
语法
public BigDecimal round ( MathContext mc)
返回类型
使用MathContext设置返回BigDecimal
BigDecimal round例子
请看示例
import java.math.*;
package org.arpit.theitroad;
import java.math.BigDecimal;
import java.math.MathContext;
import java.math.RoundingMode;
public class BigDecimalRoundMain {
public static void main(String[] args) {
BigDecimal bigdecimal1 = new BigDecimal("80.23776");
MathContext mc1=new MathContext(4);
BigDecimal roundedBigDecimal1=bigdecimal1.round(mc1);
System.out.println("80.23776 is rounded to: "+roundedBigDecimal1.toString());
//You can specify RoundingMode too with MathContext object
MathContext mc2=new MathContext(4,RoundingMode.FLOOR);
BigDecimal roundedBigDecimal2=bigdecimal1.round(mc2);
System.out.println("80.23776 is rounded to: "+roundedBigDecimal2.toString()+" with help of RoundingMode");
}
}
上面的程序将生成低于输出。
80.23776 is rounded to: 80.24 80.23776 is rounded to: 80.23 with help of RoundingMode
BigDecimal SetScale方法
我们可以使用SetScale方法在举例的帮助下使用SetScale方法来舍入大。
package org.arpit.theitroad;
import java.math.BigDecimal;
public class BigDecimalRoundMain {
public static void main(String[] args) {
BigDecimal b = new BigDecimal("12.4567");
b=b.setScale(3, BigDecimal.ROUND_HALF_UP);
System.out.println("BigDecimal Rounding to 3 decimal places: "+b);
}
}
运行上面的程序时,我们将得到以下输出。
BigDecimal Rounding to 3 decimal places: 12.457

