Shu*_*ail -3 java sqlite android
我一直试图null在条件下进行比较,但它不起作用,总是在Else中.以下是代码,
String authEmail = cursor.getString(cursor.getColumnIndexOrThrow("AUTHOR_EMAIL"));
Log.i(gtag, "author email => " + authEmail);
if (authEmail == null ) {
Log.i(gtag, "in author check - IF NULL");
} else {
Log.i(gtag, "in author check - ELSE ");
}
Run Code Online (Sandbox Code Playgroud)
这cursor是查询SQLite数据库的结果,AUTHOR_EMAIL是列的名称.Logcat将作者电子邮件显示为null,但仍然在ELSE中.以下是Logcat:
06-24 15:30:55.307: I/GCA-Abs-Con(1282): author email => foo@bar.de
06-24 15:30:55.307: I/GCA-Abs-Con(1282): in author check - ELSE
06-24 15:30:55.357: I/GCA-Abs-Con(1282): author email => null
06-24 15:30:55.357: I/GCA-Abs-Con(1282): in author check - ELSE
Run Code Online (Sandbox Code Playgroud)
的logcat的显示第3行authorEmail是null但仍进去else.
我试过authEmail.equals(null)了,但那也行不通.
我应该如何修改if条件以完美地检查null?
提前致谢.
要检查数据库字段是否具有SQL NULL值,请使用游标的isNull方法:
int index = cursor.getColumnIndexOrThrow("AUTHOR_EMAIL");
if (cursor.isNull(index)) {
...
} else {
String authEmail = cursor.getString(index);
...
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2500 次 |
| 最近记录: |