protected String formatNumber(Number value, Settings settings) {

		if (NumericUtilities.isIntegerType(value)) {
			int radix = getRadix(settings);
			SignednessFormatMode signMode = getSignMode(settings);
			long number = value.longValue();
			return NumericUtilities.formatNumber(number, radix, signMode);
		}

		if (NumericUtilities.isFloatingPointType(value)) {
			Double number = value.doubleValue();
			if (number.isNaN() || number.isInfinite()) {
				return Character.toString('\u221e'); // infinity symbol
			}
			int precision = getPrecision(settings);
			return getFormatter(precision).format(number);
		}

		if (value instanceof BigInteger) {
			int radix = getRadix(settings);
			return ((BigInteger) value).toString(radix);
		}

		if (value instanceof BigDecimal) {

			int precision = getPrecision(settings);
			DecimalFormat formatter = getFormatter(precision);
			formatter.format(value);

			return ((BigDecimal) value).toPlainString();
		}
		return value.toString();
	}
Format a Number per the Settings parameters.

@param value the number to format
@param settings settings controlling the display of the Number parameter
@return a formatted representation of the Number value
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/GTableCellRenderer.java