我有个数据库。可能会有空场。当我试图从带游标的空字段中获得值时,我得到了NullPointerException。
我用试捕找到了解决办法:
try {
subject.setName(cursor.getString(2));
} catch (NullPointerException e) {}
try {
subject.setTrainer(cursor.getString(3));
} catch (NullPointerException e) {}
try {
subject.setLocation(cursor.getString(4));
} catch (NullPointerException e) {}但我不喜欢。还有更有吸引力的解决方案吗?
发布于 2016-05-22 18:11:51
如果游标对象为null,那么它将给出空指针异常。如果您的对象不是空的,那么您可以检查对象参数是空的还是空的。这样你就能做到。
if(cursor != null) {
// cursors argument you can check here.
if(cursor.getString(2) != null) {
subject.setName(cursor.getString(2));
}
---
---
}发布于 2016-05-22 18:08:08
if (cursor != null)
{
subject.setName(cursor.getString(2));
subject.setTrainer(cursor.getString(3));
subject.setLocation(cursor.getString(4));
}这个能行吗?先检查游标是否为空?
发布于 2016-05-22 18:11:43
检查空值如下:
if (cursor != null) {//if cursor can achieve null value. I don't know your code before
String str2 = cursor.getString(2);
if (str2 != null) {
//...
subject.setName(str2);
}
}https://stackoverflow.com/questions/37377743
复制相似问题