if(jsonArray.getJSONObject(i).get("SECNO").toString()!=null && jsonArray.getJSONObject(i).get("SECNO").toString().trim()!="")
appointment.mSecNo =Integer.parseInt(jsonArray.getJSONObject(i).get("SECNO").toString());
else
appointment.mSecNo = -1;
在前面的行中,当 jsonArray.getJSONObject(i).get("SECNO").toString()
的值等于 '' 它不会被 if 语句捕获..
我收到此错误消息.. can't parse '' to integer
最佳答案
不要使用 ==
或 !=
来比较 Java 中的字符串 - 它只比较引用,而不是字符串的内容。另外,我怀疑 toString
是否会返回 null。我怀疑你想要:
Foo x = jsonArray.getJSONObject(i).get("SECNO");
if (x != null && x.toString().trim().length() > 0)
(我不知道 jsonArray.getJSONObject(i).get("SECNO")
的类型是什么,因此是 Foo
。)
在这种特殊情况下,我使用 length() > 0
来检测非空字符串 - 但为了更一般的相等,您需要使用 equals
>,所以另一种选择是:
if (x != null && !x.toString().trim().equals(""))
关于java - java中将空字符串解析为整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7776661/