java没有进入循环

标签 java loops

我正在为大学的java类(class)编写一个程序,它反转给定的整数输入。第一个循环运行良好,但由于某种原因,第二个循环甚至没有开始并且程序挂起。我不确定为什么会发生这种情况,也许其他人有答案。我们被告知将值存储在 long 类型的变量中,而不是存储在字符串中。谢谢。 `

    Scanner keyboard = new Scanner(System.in); //For user input
    long number = 0L; //Where the number entered by the user will be stored
    long loopNumber = 0L; //To be able to control the loop more effectively. a do while loop just kept going forever for some reason
    int nbDigits = 0; //Where the total number of digits will be stored
    long reverse = 0L;//Where the reversed number will be stored


    System.out.println("Enter a number with at most 10 digits:");
        number = keyboard.nextInt();
     keyboard.close(); //Close the Scanner object


    //Counting the total number of digits in the number
    loopNumber = number;
    while(loopNumber != 0) {
        loopNumber /= 10;
        ++nbDigits;
        System.out.println("this is the value of nbDigits " +nbDigits );
    }
    //calculating the reverse order of the entered integer
    loopNumber = number;
    while(loopNumber != 0) {
        reverse *= 10;
        reverse = reverse + (number%10);
    }

    System.out.println("Number of digits is " + nbDigits +"\nReverse of " + number + " is " + reverse);

最佳答案

您永远不会在第二个循环中修改loopNumber,因此它永远不会结束。

//calculating the reverse order of the entered integer
loopNumber = number;
while(loopNumber != 0) {
    reverse *= 10;
    reverse = reverse + (number%10);
}

关于java没有进入循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60180428/

相关文章:

java - 当类实现相同的接口(interface)时,Lambda 表达式会失败并出现 LambdaConversionException?

loops - 如何在一个从索引i和i + 1取值的数组上创建迭代器?

PHP 循环 INSERT MySQL 获取每个结果

c - 单词搜索字符串操作

c - 计算文件中音节数的程序

java - 如何让一帧显示50次1秒,每次显示就消失

java - 线程不会停止

java - ViewPager.SimpleOnPageChangeListener 不起作用

java - 从 Java 运行 Ruby 命令行应用程序

java - Hibernate 集合未在子移动时更新