retval = Double.NaN;
}
else {
if (p != 0) {
retval = java.math.BigDecimal.valueOf(n).setScale(p, java.math.RoundingMode.HALF_UP).doubleValue();
double temp = Math.pow(10, p);
retval = Math.round(n*temp)/temp;
retval = Math.round(n);
return retval;
retval = java.math.BigDecimal.valueOf(n).setScale(p, java.math.RoundingMode.UP).doubleValue();
double nat = Math.abs(n*temp);
retval = sign(n) *
((nat == (long) nat)
? nat / temp
: Math.round(nat + 0.5) / temp);
double na = Math.abs(n);
((na == (long) na)
? na
: (long) na + 1);
retval = java.math.BigDecimal.valueOf(n).setScale(p, java.math.RoundingMode.DOWN).doubleValue();
retval = sign(n) * Math.round((Math.abs(n)*temp) - 0.5)/temp;
retval = (long) n;
d = 150.0; p = -2;
assertEquals("round ", 200, MathX.round(d, p));
d = 2162.615d; p = 2;
assertEquals("round ", 2162.62d, MathX.round(d, p));
public void testRoundDown() {