这个Java return语句是什么意思?

时间:2011-07-08 15:50:39

标签: java android

我正在查看一些代码片段,并且遇到了一个我以前从未见过的返回声明。这是什么意思?

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;
    }

4 个答案:

答案 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逻辑上的一个不错的单行变体。