private boolean hasValidValue(JSpinner spinner) {
		NumberEditor numEditor = (NumberEditor) spinner.getEditor();
		JFormattedTextField textField = numEditor.getTextField();
		AbstractFormatter formatter = textField.getFormatter();
		String text = textField.getText();
		try {
			String roundTrip = formatter.valueToString(formatter.stringToValue(text));

			Double textDouble = Double.valueOf(text);
			Double roundTripDouble = Double.valueOf(roundTrip);

			return Double.compare(textDouble, roundTripDouble) == 0;
		}
		catch (ParseException e) {
			return false;
		}
		catch (NumberFormatException nfe) {
			return false;
		}
	}
Constructor.

@param constraint Floating-point constraint for which this component is an editor.
Ghidra/Framework/Docking/src/main/java/docking/widgets/table/constrainteditor/DoubleRangeConstraintEditor.java