这是我的代码,用于检查列的值是否为空
if(!res.getString(res.getColumnIndex("answerquestionid")).trim().equals("")){
但我明白了:
java.lang.NullPointerException:尝试调用虚方法' java.lang.String java.lang.String.trim()'在空对象引用上
检查res返回的值是否为空的正确方法是什么
答案 0 :(得分:1)
试试这个,
if(res != null){
if(res.getString(res.getColumnIndex("answerquestionid")) != null && !res.getString(res.getColumnIndex("answerquestionid")).trim().equals(""))
//your stuff
}
答案 1 :(得分:0)
试试这个:
if(res.getString(res.getColumnIndex("answerquestionid"))!=null){
答案 2 :(得分:0)
您正在检查可能为null的值的值,这将抛出Null对象引用。要解决此问题,您必须检查String
是否为null
。
if (res != null) {
String str = res.getString(res.getColumnIndex("answerquestionid"));
if(str != null) {
// Perform action
} else {
// String is null so recover (use placeholder, try again etc)
}
}
alternativley你可以在一个if语句中完成它,但我发现上面的内容更具可读性。
if (res != null) {
if( res.getString(res.getColumnIndex("answerquestionid")) != null &&
res.getString(!res.getColumnIndex("answerquestionid")).trim().equals("")) {
//Safe to use String
}
}
答案 3 :(得分:0)
你有两种方法:
首先检查res是否存在(最佳方法)
if(res.getIdentifier(myStringName) != 0){
//do stuff
}
因为如果它返回0,则意味着它不存在。
第二种方法是检查字符串是否为空
String myRes = res.getString(myStringName);
if(myRes != null && !myRes.trim().equals("")){
//do stuff
}
您的问题是您没有检查String
结果是否为null
希望这有帮助