# 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