private static Property processProperty(ValidationMessages validationMessages, SMInputCursor cursor) throws XMLStreamException { SMInputCursor c = cursor.childElementCursor(); String key = null; int value = 0; String textValue = null; while (c.getNext() != null) { String node = c.getLocalName(); if (StringUtils.equals(node, PROPERTY_KEY)) { key = c.collectDescendantText().trim(); } else if (StringUtils.equals(node, PROPERTY_VALUE)) { String s = c.collectDescendantText().trim(); try { Double valueDouble = NumberUtils.createDouble(s); value = valueDouble.intValue(); } catch (NumberFormatException ex) { validationMessages.addErrorText(String.format("Cannot import value '%s' for field %s - Expected a numeric value instead", s, key)); } } else if (StringUtils.equals(node, PROPERTY_TEXT_VALUE)) { textValue = c.collectDescendantText().trim(); textValue = "mn".equals(textValue) ? MINUTE : textValue; } } return new Property(key, value, textValue); }
case 'D' : try { Double d = NumberUtils.createDouble(numeric); if (!(d.isInfinite() || (d.floatValue() == 0.0D && !allZeros))) { return d; Double d = createDouble(str); if (!(d.isInfinite() || (d.doubleValue() == 0.0D && !allZeros))) { return d;
/** * 文本转换到小数double * * @param o * @param defaultValue * @return */ public static double toDouble(String o, Double defaultValue) { if (isBlank(o)) return defaultValue; try { return NumberUtils.createDouble(o); } catch (NumberFormatException e) { if (defaultValue == null)// 默认值为null,且数值非法的情况下抛出异常 throw e; return defaultValue; } }
/** * Returns the value as a {@link Double} value. The returned value will be <code>0</code> or * <code>1</code> if the {@link #value} is a boolean value. If {@link #value} can not be * converted into a number, a {@link NumberFormatException} is thrown. * * @return {@link #value} as {@link Double} */ public double getValueAsDouble() { if (NumberUtils.isNumber(value)) { return NumberUtils.createDouble(value); } if (isBooleanValue(value)) { return BooleanUtils.toBoolean(value) ? 1 : 0; } throw new NumberFormatException(); }
private static Property processProperty(ValidationMessages validationMessages, SMInputCursor cursor) throws XMLStreamException { SMInputCursor c = cursor.childElementCursor(); String key = null; int value = 0; String textValue = null; while (c.getNext() != null) { String node = c.getLocalName(); if (StringUtils.equals(node, PROPERTY_KEY)) { key = c.collectDescendantText().trim(); } else if (StringUtils.equals(node, PROPERTY_VALUE)) { String s = c.collectDescendantText().trim(); try { Double valueDouble = NumberUtils.createDouble(s); value = valueDouble.intValue(); } catch (NumberFormatException ex) { validationMessages.addErrorText(String.format("Cannot import value '%s' for field %s - Expected a numeric value instead", s, key)); } } else if (StringUtils.equals(node, PROPERTY_TEXT_VALUE)) { textValue = c.collectDescendantText().trim(); textValue = "mn".equals(textValue) ? MINUTE : textValue; } } return new Property(key, value, textValue); }
v = new Double(numUntypedValue.doubleValue()); else if (isStringUntypedValue) v = NumberUtils.createDouble(strUntypedValue); break; case DataTypeEnum.STRING_TYPE_VALUE: v = new Double(numUntypedValue.doubleValue()); else if (isStringUntypedValue) v = NumberUtils.createDouble(strUntypedValue); break; case DataTypeEnum.PERCENT_TYPE_VALUE: v = new Double(numUntypedValue.doubleValue()); else if (isStringUntypedValue) v = NumberUtils.createDouble(strUntypedValue); break;
v = new Double(numUntypedValue.doubleValue()); else if (isStringUntypedValue) v = NumberUtils.createDouble(strUntypedValue); break; case DataTypeEnum.STRING_TYPE_VALUE: v = new Double(numUntypedValue.doubleValue()); else if (isStringUntypedValue) v = NumberUtils.createDouble(strUntypedValue); break; case DataTypeEnum.PERCENT_TYPE_VALUE: v = new Double(numUntypedValue.doubleValue()); else if (isStringUntypedValue) v = NumberUtils.createDouble(strUntypedValue); break;
} else if (Double.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createDouble(strTypedValue); else if (isNumberTypedValue) v = new Double(numTypedValue.doubleValue());
} else if (Double.class.equals(untypedValueClass)) { if (isStringTypedValue) v = NumberUtils.createDouble(strTypedValue); else if (isNumberTypedValue) v = new Double(numTypedValue.doubleValue());
case 'D' : try { Double d = NumberUtils.createDouble(numeric); if (!(d.isInfinite() || (d.floatValue() == 0.0D && !allZeros))) { return d; Double d = createDouble(str); if (!(d.isInfinite() || (d.doubleValue() == 0.0D && !allZeros))) { return d;
case 'D' : try { Double d = NumberUtils.createDouble(numeric); if (!(d.isInfinite() || (d.floatValue() == 0.0D && !allZeros))) { return d; Double d = createDouble(str); if (!(d.isInfinite() || (d.doubleValue() == 0.0D && !allZeros))) { return d;
case 'D' : try { Double d = NumberUtils.createDouble(numeric); if (!(d.isInfinite() || (d.floatValue() == 0.0D && !allZeros))) { return d; Double d = createDouble(str); if (!(d.isInfinite() || (d.doubleValue() == 0.0D && !allZeros))) { return d;
case 'D' : try { Double d = NumberUtils.createDouble(numeric); if (!(d.isInfinite() || (d.floatValue() == 0.0D && !allZeros))) { return d; Double d = createDouble(str); if (!(d.isInfinite() || (d.doubleValue() == 0.0D && !allZeros))) { return d;
case 'D' : try { Double d = NumberUtils.createDouble(numeric); if (!(d.isInfinite() || (d.floatValue() == 0.0D && !allZeros))) { return d; Double d = createDouble(str); if (!(d.isInfinite() || (d.doubleValue() == 0.0D && !allZeros))) { return d;