Java Spring:将可为空的字符串值转换为Double
我有一张弦的地图。我想从该贴图中提取一个值,并将其作为双属性传递到另一个对象中。密钥可能解析为null。最好的方法是什么 例如,当值解析为null时,此操作失败:Java Spring:将可为空的字符串值转换为Double,java,spring,Java,Spring,我有一张弦的地图。我想从该贴图中提取一个值,并将其作为双属性传递到另一个对象中。密钥可能解析为null。最好的方法是什么 例如,当值解析为null时,此操作失败: <bean id="someBean" class="mystuff.Example"> <property name="someDoubleProp"> <bean class="java.lang.Double"> <constructor-
<bean id="someBean" class="mystuff.Example">
<property name="someDoubleProp">
<bean class="java.lang.Double">
<constructor-arg value="#{jobParameters['something']}" />
</bean>
</property>
</bean>
使用三元运算符和
请小心,因为如果jobParameters['something']不是有效的双精度,您将得到一个NumberFormatException
您可以考虑使用这样的函数,它不会引发异常,而是设置一个默认值。使用三元运算符和 请小心,因为如果jobParameters['something']不是有效的双精度,您将得到一个
NumberFormatException
您可以考虑使用这样的函数,它不会引发异常,而是设置一个默认值。我将(双精度)0更改为null,但除此之外,它还能工作,谢谢。我将(双精度)0更改为null,但除此之外,它还能工作,谢谢。
myMap.get("something") == null ? null : new Double(myMap.get("something"))
#{jobParameters['something']==null?(double)0:T(java.lang.Double).valueOf(jobParameters['something'])}