【发布时间】:2012-11-14 19:29:58
【问题描述】:
我将我的字符串变量转换为整数和双精度。我想在运行时检查 String 变量是否包含有效的 Integer 或 Double 值。
我遵循代码,但它对我不起作用。
String var1="5.5";
String var2="6";
Object o1=var1;
Object o2=var2;
if (o1 instanceof Integer)
{
qt += Integer.parseInt( var1);// Qty
}
if (o2 instanceof Double)
{
wt += Double.parseDouble(var2);// Wt
}
【问题讨论】:
-
o1 和 o2 绝对不是 Integer 的实例,因为它们都引用了 String 对象
-
您将 String 向上转换为 Object,因此 o1 instanceOf Integer 永远不会为真。
标签: java casting type-conversion typechecking