我正在查看一些代码片段,并且遇到了一个我以前从未见过的返回声明。这是什么意思?
return checkDB != null ? true : false;
以下是整个方法代码,供参考:
private boolean checkDataBase(){
SQLiteDatabase checkDB = null;
try{
String pathToDB = dbPath + dbName;
checkDB = SQLiteDatabase.openDatabase(pathToDB, null, SQLiteDatabase.OPEN_READONLY);
}catch(SQLiteException e){
//database does't exist yet.
}
if(checkDB != null){
checkDB.close();
}
return checkDB != null ? true : false;
}
答案 0 :(得分:8)
与return checkDB != null
?:
是一个“三元运算符”。示例:a ? b : c
与使用此正文的方法相同:{ if(a) { return b; } else { return c; } }
答案 1 :(得分:4)
它的三元语句可以理解为
if(checkDB != null) {
return true;
}
else {
return false;
}
答案 2 :(得分:1)
return checkDB != null ? true : false;
与return checkDB != null;
完全相同。
答案 3 :(得分:1)
它被称为ternary operation - if
else
逻辑上的一个不错的单行变体。