【问题标题】:Nested if-statements without brackets没有括号的嵌套 if 语句
【发布时间】:2010-10-30 08:04:31
【问题描述】:

给出以下代码:

       if (c2-c1==0)
        if ( c1 != c3 )
                    {...}

如何解释这段代码?第一个 if 语句没有 {}。上面的代码是否等于下面的代码?:

 if (c2-c1==0){
    if ( c1 != c3 )
                {...}
 }

【问题讨论】:

  • 正如人们所回答的那样,是的,它们相当于编译器。但是不要那样做。正是出于这个原因。 “始终使用大括号”是所有语法派生自 B 语言(C、Java、C++、C#...)的语言的基本可维护性准则之一。懒惰的人可能会有一两个单行例外,但除此之外,Just Do It。使用适当的工具,您基本上不必输入它们。

标签: java if-statement brackets


【解决方案1】:

是的。 if 语句适用于它之后的下一条语句 - 在这种情况下恰好是另一个 if。

【讨论】:

    【解决方案2】:

    是的,它们是等价的

    【讨论】:

      【解决方案3】:

      当然。不加括号意味着第一个 if 中的唯一指令是另一个 if,它可以包含您想要的任何内容。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-03
        • 2023-01-16
        • 1970-01-01
        • 2013-06-14
        • 2023-03-16
        • 2014-05-12
        相关资源
        最近更新 更多