+ private DecimalFormat[] createHighFormats(int digitCount) {
+ // [0] = for formatting 1.234567e{6,9,...}
+ // [1] = for formatting 12.34567e{6,9,...}
+ // [2] = for formatting 123.4567e{6,9,...}
+ DecimalFormat[] highs = new DecimalFormat[3];
+ for (int exp10 = 0; exp10 < 3; ++exp10) {
+ StringBuilder fmt = new StringBuilder();
+ int digits = digitCount;
+ for (int i = 0; i <= exp10 && digits > 0; ++i, --digits)
+ fmt.append('0');
+ if (digits > 0) {
+ fmt.append(".");
+ for (; digits > 0; --digits)
+ fmt.append(trailingZeroes ? '0' : '#');
+ }
+ fmt.append("E0");
+ //System.out.println("highFormat(" + exp10 + "; " + digitCount + "): " + fmt);
+ highs[exp10] = new DecimalFormat(fmt.toString(), decimalFormatSymbols);
+ }
+ return highs;
+ }
+