当我们使用while循环执行间谍编号和回文编号程序时,jvm挂起

时间:2019-02-03 17:29:22

标签: java

我写了一个程序来查找一个数字是否是间谍数字或不使用while循环,但是当我执行它时,右下角的jvm栏显示了jvm正在执行,但是结果没有执行,所以我该怎么办?做

我试图重置jvm,但是没有成功

class spy
{
    public static void main(int n)
    {
        int a=0;
        int b=0;
        int c= 01;
        int d=0;
        int num=n;
        while(n>0)
        {
            a=n%10;
            b=b+a;
            c=a*c;
            d=n/10;
        }
        if(b==c)
        {
            System.out.println(num+ "is a spy number");
        }
    }
}

我希望jvm执行并且程序会打印该编号是否为间谍但jvm没有执行并且显示工作正在进行中

1 个答案:

答案 0 :(得分:3)

如果您传递n> 0的值,则while循环将陷入无限循环,并且永不退出。 n的值永远不会在循环内改变,因此它将永远循环,永远不会结束。