【发布时间】:2012-01-07 20:28:24
【问题描述】:
当我在网络上下载数据时,有时它可以工作,有时它不能。
我的问题在于int:
运行时:“”
runtime 是一个 int,当我在它上面使用 gson 时会导致这个问题:
01-07 21:22:57.602: E/AndroidRuntime(2726): Caused by: java.lang.NumberFormatException: Invalid int: ""
我尝试了一些 if 语句,但它不起作用。
public int getRuntime() {
if(Integer.valueOf(runtime)==null){
return 0;
}else{
return runtime;
}
}
甚至
public int getRuntime() {
if(Integer.valueOf(runtime).equals(null)){
return 0;
}else{
return runtime;
}
}
但没有任何效果。
【问题讨论】:
-
您似乎不明白什么是异常,或者如何处理它们:docs.oracle.com/javase/tutorial/essential/exceptions 提示:无论
runtime是什么,它都不能转换为int。从您发布的内容来看,它看起来像一个空的String -
但是当数据工作时它是一个数字而不是一个字符串,这很奇怪。
-
@Tsunaze JSON总是是一个字符串,数字只是文本编码的。就像您在此处看到的数字 1234(在我的评论中 :))不是数字,而是可以解析为数字的字符串。
-
你说得对。我只是把 String 而不是 int。