Java if语句未按预期工作

Java if语句未按预期工作,java,if-statement,Java,If Statement,我正在准备java编程考试,我还是一个初学者。我在if语句中的问题是: int z; if (z==1); {//calculates area} if (z==2) {//calculates volume} 目标是,如果用户选择1,他将找到计算的面积,如果用户选择2,将计算体积。但是,在输出中,面积和体积将根据用户的选择进行计算。为什么会这样?您必须删除在条件之后。否则,if语句为空,并且始终执行它后面的代码块 if (z==1) {//calculates area} if (z=

我正在准备java编程考试,我还是一个初学者。我在if语句中的问题是:

int z;

if (z==1);
{//calculates area}

if (z==2)
{//calculates volume}

目标是,如果用户选择1,他将找到计算的面积,如果用户选择2,将计算体积。但是,在输出中,面积和体积将根据用户的选择进行计算。为什么会这样?

您必须删除
在条件之后。否则,if语句为空,并且始终执行它后面的代码块

if (z==1)
{//calculates area}

if (z==2)
{//calculates volume}
或者更好:

if (z==1) {
    //calculates area
} else if (z==2) {
    //calculates volume
}

因为这两个条件不可能都是真的。

您必须删除
在条件之后。否则,if语句为空,并且始终执行它后面的代码块

if (z==1)
{//calculates area}

if (z==2)
{//calculates volume}
或者更好:

if (z==1) {
    //calculates area
} else if (z==2) {
    //calculates volume
}
因为这两个条件不可能都是真的。

从第一行末尾删除分号(;)

学习根据规范格式化代码

int z;
if (z==1) {
    //calculates area
}

if (z==2) {
   //calculates volume
}
从第一行末尾删除分号(;)

学习根据规范格式化代码

int z;
if (z==1) {
    //calculates area
}

if (z==2) {
   //calculates volume
}
  • 必须删除if(条件)之后的分号(;)如果(条件)不是语句,因此不应插入分号

  • 双斜杠(//)已用于注释掉一行。这就是为什么if子句中的一个括号不再使用的原因

  • 代码应如下所示:

    int z;
    
    if (z==1)
    {
        //calculates area
    }
    
    if (z==2)
    {
        //calculates volume
    }
    
  • 必须删除if(条件)之后的分号(;)如果(条件)不是语句,因此不应插入分号

  • 双斜杠(//)已用于注释掉一行。这就是为什么if子句中的一个括号不再使用的原因

  • 代码应如下所示:

    int z;
    
    if (z==1)
    {
        //calculates area
    }
    
    if (z==2)
    {
        //calculates volume
    }
    

    在谈论代码约定时吹毛求疵:在本地var声明和第一条语句之间应该有一个
    空行。在
    ==
    周围应该有空格。在谈论代码约定时吹毛求疵:在本地var声明和第一条语句之间应该有一个
    空行。在
    ==
    周围应该有空格。