【问题标题】:Can I assign test result to a boolean variable in Java?我可以将测试结果分配给 Java 中的布尔变量吗?
【发布时间】:2010-05-25 16:06:39
【问题描述】:

我写boolean bool = aString.indexOf(subString) != -1的时候Eclipse没有报错,是不是和boolean bool = aString.indexOf(subString) != -1 ? true : false一样?

【问题讨论】:

    标签: java syntax boolean


    【解决方案1】:

    是的。比较产生一个布尔值,它可以像任何其他值一样分配给变量。

    第二种形式(使用三元?: 运算符)是多余的,不应使用。

    在风格上,我通常在将布尔表达式赋值给值时将它们括在括号中,如

    boolean bool = (aString.indexOf(subString) != -1);
    

    为了在两个运算符之间使用= 符号进行强烈的视觉区分,但这不是必需的。

    【讨论】:

      【解决方案2】:

      是的,两种语法都是等价的。

      使用括号更清楚或更易读。

      boolean bool = (aString.indexOf(subString) != -1);
      

      【讨论】:

        【解决方案3】:

        是的,当然。布尔表达式返回一个布尔值。这就是为什么它可以在if 语句等中使用,因为它们期望truefalse 结果。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2013-06-24
          • 1970-01-01
          • 2021-10-24
          • 1970-01-01
          • 1970-01-01
          • 2021-05-22
          • 1970-01-01
          相关资源
          最近更新 更多