Using 'setScale' method of BigDecimal, you can specify the scale of the BigDecimal value to be returned.
For example, below snippet rounnd the decimal to 2 digits after '.'.
BigDecimal roundedValue = actualValue.setScale(2, RoundingMode.CEILING);
Find the below working application.
package com.sample.app;
import java.math.BigDecimal;
import java.math.RoundingMode;
public class App {
public static void main(String args[]) {
BigDecimal[] bigDecimals = new BigDecimal[5];
bigDecimals[0] = new BigDecimal("0.81934");
bigDecimals[1] = new BigDecimal("0.5");
bigDecimals[2] = new BigDecimal("0.564");
bigDecimals[3] = new BigDecimal("0.54321");
bigDecimals[4] = new BigDecimal("0.678951");
System.out.println("Actual Value, Rounded Value");
for(int i = 0; i < bigDecimals.length; i++) {
BigDecimal actualValue = bigDecimals[i];
BigDecimal roundedValue = actualValue.setScale(2, RoundingMode.CEILING);
System.out.println(actualValue + "," + roundedValue);
}
}
}
Output
Actual Value, Rounded Value 0.81934,0.82 0.5,0.50 0.564,0.57 0.54321,0.55 0.678951,0.68
You may
like
No comments:
Post a Comment