当前位置: 首页 > 知识库问答 >
问题:

Java布尔返回if语句[重复]

高祺
2023-03-14

有人能用简单的英语解释一下这句话背后的逻辑吗?

return mContainsLoadingRow ? (getContentDataSize() + 1) : getContentDataSize();

假设mContainsLoadingRow为布尔值,如果< code>mContainsLoadingRow为< code>true,

然后返回< code > getContentDataSize()1 。

如果没有,则返回 getContentDataSize()。

这是正确的看待方式吗?

共有2个答案

班景龙
2023-03-14
int x = 0;
if (0 < 1){
  x = 2;
}else{
  x = 42;
}
// in short:
x = (0<1) ? 2 : 42;

所以是的,你是对的

伊羽
2023-03-14

这个完整的表达式在 Java 中被称为三元运算符

mContainsLoadingRow ? (getContentDataSize() + 1) : getContentDataSize();
        ||                       ||                         ||
 //boolean expression      //return if true          //return if false

在这个代码中

mContainsLoadingRow是一个布尔变量,其中包含truefalse。您还可以使用任何布尔表达式更改mContainsLoadingRow,例如(a

?(问号):- 使我们能够区分它是真的还是假的。

如果true表达式(getContentData大小()1)将被返回。

如果< code>false,则将返回expressin < code > getContentDataSize()值。

 类似资料:
  • 是否可以编写如下JPQL查询: <代码>选择计数(*) 这将根据实体填充条件是否存在返回真/假布尔值? 我想这样使用查询: 我示例中的查询在语法上不正确(解析错误),但是是否有任何正确的方法可以像在JPQL中那样进行检查,从而返回布尔值,或者只有在Java代码中才有可能?

  • 问题内容: 为什么这给了我一个丢失的退货陈述错误?每个if / else都有返回值,最后一个括号出现错误 问题答案: 每个语句都在一个语句内。虽然从逻辑上讲这是不可能的,但是当所有评估都不为真时,编译器需要返回。 我建议: 我认为,此解决方案可解决编译器问题并稍微提高可读性。 或者,有以下解决方案: 引发异常将使你可以退出方法而无需返回任何信息……因为可以说,如果到达最后一个,显然会出错。

  • 今天我得到了一个关于代码的评论,考虑到我在学校作业中检查变量是真还是假的方式。 我编写的代码如下所示: 他们说这样写更好/更整洁: 例如,0和1不应该在该变量中。

  • 如何在SQL Select语句上返回布尔值? 我尝试了以下代码: 并且它只返回如果存在于表中。如果表中不存在UserID,我希望它返回。

  • 我正在使用返回true false的方法(例如方法containsKey of MutableList)。由于函数是用java写的,Kotlin把返回类型称为Boolean?这就是我得到一个编译错误的原因:“必需:布尔,发现:布尔?”.我必须说在某些情况下(不知道为什么)使用这个方法是可以的,有时它会返回上面的错误。有人能猜到是什么原因吗? 我的代码: 如果编译了第一个,则第二个会出错: 布尔类型

  • 我有一个问题,比较布尔值的if语句不起作用。最后一个if语句,其中notifFlag==true,如果我将它放在那里,它就不起作用了。日志显示notifFlag设置为true,但if语句未运行。但是,如果删除notifFlag==true,则if语句将运行。 带有标志得日志: 没有标志得日志: