/** * @param value * @return string */ public static final String toDecimal(final long value) { if (value < 0) { return '-' + Format.Compact.toDecimal(-value); } if (value >= 100L * 1000L * 1000L * 1000L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_TERA) + "T"; } if (value >= 1000L * 1000L * 1000L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_TERA) + "T"; } if (value >= 100L * 1000L * 1000L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_GIGA) + "G"; } if (value >= 1000L * 1000L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_GIGA) + "G"; } if (value >= 100L * 1000L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_MEGA) + "M"; } if (value >= 1000L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_MEGA) + "M"; } if (value >= 100L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_KILO) + "k"; } if (value >= 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_KILO) + "k"; } if (value >= 100L) { return Compact.FORMATTER.format1(value); } return Compact.FORMATTER.format2(value); }
/** * @param value * @return string */ public static final String toDecimal(final double value) { if (Double.isInfinite(value)) { return value > 0 ? "+inf" : "-inf"; } if (Double.isNaN(value)) { return "NaN"; } if (value < 0) { return '-' + Format.Compact.toDecimal(-value); } if (value < Format.DOUBLE_NANO) { return String.valueOf(value); } if (value >= 100L * 1000L * 1000L * 1000L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_TERA) + "T"; } if (value >= 1000L * 1000L * 1000L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_TERA) + "T"; } if (value >= 100L * 1000L * 1000L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_GIGA) + "G"; } if (value >= 1000L * 1000L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_GIGA) + "G"; } if (value >= 100L * 1000L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_MEGA) + "M"; } if (value >= 1000L * 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_MEGA) + "M"; } if (value >= 100L * 1000L) { return Compact.FORMATTER.format1(value / Format.DOUBLE_KILO) + "k"; } if (value >= 1000L) { return Compact.FORMATTER.format2(value / Format.DOUBLE_KILO) + "k"; } if (value >= 20L) { return Compact.FORMATTER.format1(value); } if (value >= 1L) { return Compact.FORMATTER.format2(value); } if (value >= Format.DOUBLE_MILLI) { if (value >= Format.DOUBLE_MILLI * 10) { return Compact.FORMATTER.format3((int) (value * 1000) / 1000.0); } return Compact.FORMATTER.format2(value / Format.DOUBLE_MILLI) + "ml"; } if (value >= Format.DOUBLE_MICRO) { return Compact.FORMATTER.format2(value / Format.DOUBLE_MICRO) + "mk"; } return Compact.FORMATTER.format2(value / Format.DOUBLE_NANO) + "n"; }