Can';无法理解带有else if语句的java数学类(代码如下)

Can';无法理解带有else if语句的java数学类(代码如下),java,class,math,if-statement,Java,Class,Math,If Statement,我不明白两个“如果”的符号怎么等于2。程序如何知道选择哪一个?因为2个选项等于1,所以这不意味着其中一个没有被使用吗?我用的那本书有打字错误吗?我需要一些澄清,谢谢 这肯定是一个输入错误,第三个条件(第二个符号==1)永远不会达到。如果(符号==2),则应为。这肯定是一个打字错误,第三个条件(第二个符号==1)将永远不会达到。如果(sign==2),则应该是。小提示:打印出sign变量。这样你就可以看到它是如何变化的。小提示:打印出符号变量。这样你就可以看到它是如何变化的。澄清:这是一个bug的

我不明白两个“如果”的符号怎么等于2。程序如何知道选择哪一个?因为2个选项等于1,所以这不意味着其中一个没有被使用吗?我用的那本书有打字错误吗?我需要一些澄清,谢谢

这肯定是一个输入错误,第三个条件(第二个
符号==1
)永远不会达到。如果(符号==2),则应为

这肯定是一个打字错误,第三个条件(第二个
符号==1
)将永远不会达到。如果(sign==2),则应该是

小提示:打印出
sign
变量。这样你就可以看到它是如何变化的。

小提示:打印出
符号
变量。这样你就可以看到它是如何变化的。

澄清:这是一个bug的例子。永远不要这样做@PaulVargas和一个例子是语法错误的例子;)打扰一下它烧坏了我的服务器。对于给您带来的不便,我深表歉意。澄清:这是一个错误示例。永远不要这样做@PaulVargas和一个例子是语法错误的例子;)打扰一下它烧坏了我的服务器。我为给您带来的不便表示歉意。啊,我想是的,这让我困惑了一会儿,谢谢!所以0代表第一个选择,1代表下一个选择,2代表下一个选择,但是,如果发生其他情况,这意味着必须“随机”选择3,对吗?另外,当我创建变量并将其设置为*3时,这是否意味着它开始像“01123”一样计数,还是因为它计算3个数字而变为“0112”?因为java总是从0开始计数,对吗?很抱歉有额外的问题,谢谢!实际上,只有当
符号
等于
3
时,才能到达最后的
else
部分。Java中的数组索引从0开始,但我不确定“开始计数”是什么意思,请详细说明一下好吗?啊,我想是的,这让我困惑了一会儿,谢谢!所以0代表第一个选择,1代表下一个选择,2代表下一个选择,但是,如果发生其他情况,这意味着必须“随机”选择3,对吗?另外,当我创建变量并将其设置为*3时,这是否意味着它开始像“01123”一样计数,还是因为它计算3个数字而变为“0112”?因为java总是从0开始计数,对吗?很抱歉有额外的问题,谢谢!实际上,只有当
符号
等于
3
时,才能到达最后的
else
部分。Java中的数组索引从0开始,但我不确定“开始计数”是什么意思,请详细说明一下好吗?我使用它作为一种简单的方法来跟踪应用程序运行期间变量发生的情况。我使用它作为一种简单的方法来跟踪应用程序运行期间变量发生的情况。
public class S1P3 {
    public static void main (String[] args) throws Exception{
        int num1 = (int)(Math.round(Math.random()*10));
        int num2 = (int)(Math.round(Math.random()*10));
        int sign = (int)(Math.round(Math.random()*3));
        int answer;
        System.out.println("\n\n*****");
        if(sign==0)
        {
            System.out.println(num1+" * "+num2);
            answer = num1*num2;
        }
        else if(sign==1)
        {
            System.out.println(num1+" / "+num2);
            answer = num1/num2;
        }
        else if(sign==1)
        {
            System.out.println(num1+" - "+num2);
            answer = num1-num2;
        }
        else
        {
            System.out.println(num1+" % "+num2);
            answer = num1%num2;
        }
        System.out.println("*****\n");
        System.out.println("3 ...");
        Thread.sleep(1000);
        System.out.println("2 ...");
        Thread.sleep(1000);
        System.out.println("1 ...");
        Thread.sleep(1000);

        System.out.println("ANSWER: "+answer);
    }
}