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

If语句结尾的分号

松献
2023-03-14
if(a == b);
// Do stuff

共有1个答案

殳俊
2023-03-14

Java语言规范指出:

空洞的陈述

一个空的语句什么也不做。

EmptyStatement:
    ;

空语句的执行总是正常完成

它本质上意味着,如果a==b,则要执行空语句

if(a == b);

这个问题的解决方案主要有两种:

>

  • 通过在{}中使用代码格式化程序和内部的周围内容,可以避免空语句的问题。通过这样做,您的空语句将更易读。

    if(a == b){
      ;
    }
    

    您还可以检查用于静态代码分析的工具,如:

    • FindBugs
    • CheckStyle
    • PMD

    他们可以立即突出像这样的问题。

    我建议将这两种解决方案结合起来。

  •  类似资料:
    • 问题内容: 今天,在搜索错误半小时之后,我发现可以在if语句后加上分号而不是代码,如下所示: 从根本上讲,这意味着无论是否相等,都将完成工作,并且该语句毫无意义。Java为什么不给我一个错误?有什么情况会有用吗? 问题答案: Why does it happen? Java语言规范说: 空话 空语句不执行任何操作。 空语句的执行总是正常完成 从本质上讲,这意味着你要在a == b时执行空语句 Wh

    • 问题内容: 我在处理应用程序时犯了一个编码错误,它是对null引用的测试。我花了几个小时才发现问题所在,但是我不明白的是为什么代码如此表现。 if语句以结束,这是我的错误,即使很明显两个值都为null ,也将打印出来。有人可以解释为什么吗? 问题答案: 该分号结束了一条语句(一个空的语句),因此编译器将您的代码翻译为以下内容: 换句话说,如果expression是,它将执行空的代码块。然后,无论是

    • if语句以结尾,这是我的错误,被打印出来,即使很明显这两个值都为null。有人能解释为什么吗?

    •  if 语句,就是类似于「如果○○的话,做●●」,根据条件判断脚本的一部分是否执行的语法。  语法如下: if(expression) 语句或语句块 else 语句或语句块  第一个“语句或语句块”是当 expression 表达式的结果为真时执行的部分,第二个“语句或语句块”则是结果为假时执行的部分。如果不需要 else 以后的部分,可以省略。 例: if(a==b) inform("a和b相等

    • 为什么我在pycharm中会出现这样一个错误(请参见linting)说“期望语句结束”? 我对python非常陌生。

    • 主要内容:示例第一个决策声明中,我们来看看 'if' 语句。在 Erlang 这个语句的一般形式,如下面的程序所显示 - 在 Erlang 中,条件它是计算结果为真或假的表达式。如果条件为真,则 statement#1 将被执行,否则 statement#2 将被执行。 下面的程序是 Erlang 中的 if 表达式的一个简单的例子 - 示例 以下是上述程序需要说明的一些关键点 - 这里所使用的表达式是变量A和