@NotNull default B append(double d,int decimalPlaces) throws BufferOverflowException {
  if (decimalPlaces < 20) {
    double d2=d * Maths.tens(decimalPlaces);
    if (d2 <= Long.MAX_VALUE && d2 >= Long.MIN_VALUE) {
      return appendDecimal(Math.round(d2),decimalPlaces);
    }
  }
  return append(d);
}

@ NotNull default B append ( double d , int decimalPlaces ) throws BufferOverflowException { if ( decimalPlaces < 20 ) { double d2 = d * Maths . tens ( decimalPlaces ) ; if ( d2 <= Long . MAX_VALUE && d2 >= Long . MIN_VALUE ) { return appendDecimal ( Math . round ( d2 ) , decimalPlaces ) ; } } return append ( d ) ; }
append a double in decimal notation to a specific number of decimal places . trailing zeros are not truncated . < p > if the number would normally be printed with more decimal places , the number is rounded .
