private String compute(String left,double right,boolean isInteger){
  if (left == null && Double.isNaN(right)) {
    return null;
  }
  if (isInteger && right == (int)right) {
    return (left == null ? "" : left) + (int)right;
  }
 else   if (Double.isInfinite(right)) {
    return (left == null ? "" : left) + Tools.formatNumber(right);
  }
 else {
    return (left == null ? "" : left) + (Double.isNaN(right) ? "" : right);
  }
}

private String compute ( String left , double right , boolean isInteger ) { if ( left == null && Double . isNaN ( right ) ) { return null ; } if ( isInteger && right == ( int ) right ) { return ( left == null ? "" : left ) + ( int ) right ; } else if ( Double . isInfinite ( right ) ) { return ( left == null ? "" : left ) + Tools . formatNumber ( right ) ; } else { return ( left == null ? "" : left ) + ( Double . isNaN ( right ) ? "" : right ) ; } }
adds a string and a double . if the double represents an integer tries to add it without trailing ' . 0 ' . if both are missing , then the result is missing ; if one is missing , it is ignored . if the double is infinite , formats is using a symbol .
