当前位置: 首页 > 面试题库 >

为什么我使用?:条件运算符不正确?

齐昊苍
2023-03-14
问题内容

尝试编译时出现“不是语句”的编译错误,代码为:

(checkDatabaseExist())?connectToDB() : buildDB();

当这些功能是:

private boolean checkDatabaseExist() {...}
private void connectToDB(){...}
private void buildDB(){...}

有任何想法吗?


问题答案:

是的,您不能像这样使用条件运算符。其目的是计算一个或另一个
表达式 。它并不是要选择一个要执行的 语句 或另一条 语句方法

只需使用:

if (checkDatabaseExist()) {
    connectToDB();
} else {
    buildDB();
}


 类似资料:
  • 本文向大家介绍JavaScript中的条件运算符是什么?,包括了JavaScript中的条件运算符是什么?的使用技巧和注意事项,需要的朋友参考一下 条件运算符首先对表达式的真值或假值求值,然后根据求值结果执行两个给定语句之一。 序号 运算符和说明 1 ?:(视情况而定) 如果条件为真?然后取值X:否则取值Y 示例 尝试以下代码以了解条件运算符在JavaScript中的工作方式:

  • 但是我发现我不能用围棋做同样的事情,我必须写一个if-else语句。我只是想知道为什么在围棋世界里不存在这种情况(是否有一些设计原则来解释这种情况)

  • 为什么我不能在c#-6字符串插值中使用内联条件运算符,而不将其括在括号中? 以及错误: 如您所见,解析器似乎遇到了困难。这是一个错误,还是字符串插值机制的一个特性?

  • targetPixValList是一个包含Double对象的列表,它也包含列表中连续位置的相似值,当我尝试使用Code_1比较两个Double值时,cnt返回零。当我使用code_2时,cnt返回值。 列表的类型是 为什么“==”运算符不能与Double一起使用? 代码_1: Code_2:

  • 我看过一些代码,其中人们使用了带有两个“!”的条件子句s 这是我能找到的一些例子。 使用有什么好处超过?

  • 我试图用if-let表达来概括我的大脑。我知道它的作用,但我找不到一些细节背后的基本原理。 第一个细节是赋值运算符而不是相等运算符的使用,第二个细节是操作数的位置。 例如: 在我看来,这样更“清晰”: 或者更好: 有人能帮我理解这背后的原理吗?