Java调试问题

标签 java debugging

class Celsius {
    public static void main(String[] args){
      celsius(0);
    }
    public static void celsius(double fahrenheitTemperature){
        double celsiusTemperature;
        for (fahrenheitTemperature = 0; fahrenheitTemperature <= 20; fahrenheitTemperature++) {
            celsiusTemperature = ((fahrenheitTemperature - 32) * 5) / 9;
            double celsius_rounded = Math.round(celsiusTemperature * 100)/100.0;
            System.out.println("Fahrenheit: " + fahrenheitTemperature + "  Celsius: " + celsius_rounded);


         }
        }
    }

代码运行良好。问题是当我调用该方法时,无论我提供什么参数,我都会得到相同的结果。如果我在摄氏方法的参数中输入 20 或 0,我将得到相同的结果。

我可以做什么来调试这个问题?

我的结果:

Fahrenheit: 0.0  Celsius: -17.78
Fahrenheit: 1.0  Celsius: -17.22
Fahrenheit: 2.0  Celsius: -16.67
Fahrenheit: 3.0  Celsius: -16.11
Fahrenheit: 4.0  Celsius: -15.56
Fahrenheit: 5.0  Celsius: -15.0
Fahrenheit: 6.0  Celsius: -14.44
Fahrenheit: 7.0  Celsius: -13.89
Fahrenheit: 8.0  Celsius: -13.33
Fahrenheit: 9.0  Celsius: -12.78
Fahrenheit: 10.0  Celsius: -12.22
Fahrenheit: 11.0  Celsius: -11.67
Fahrenheit: 12.0  Celsius: -11.11
Fahrenheit: 13.0  Celsius: -10.56
Fahrenheit: 14.0  Celsius: -10.0
Fahrenheit: 15.0  Celsius: -9.44
Fahrenheit: 16.0  Celsius: -8.89
Fahrenheit: 17.0  Celsius: -8.33
Fahrenheit: 18.0  Celsius: -7.78
Fahrenheit: 19.0  Celsius: -7.22
Fahrenheit: 20.0  Celsius: -6.67

最佳答案

您的“FOR”循环初始化华氏温度=0,从而覆盖您传入的任何值。解决方案可能如下:

for(dobule i = fahrenheitTemperature; i<=20;i++){

关于Java调试问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59852184/

相关文章:

java - 在java中如何判断命令提示符实例何时关闭?

java - 内存泄漏,spring 3.2.0.RELEASE,httpcomponents 4.2.3

java - 检查unix下服务器的分页空间利用率?

java - 如何在Android Studio中查看异常?

c++ - 二叉搜索树实现 - 从给定节点查找兄弟节点工作不正常

java.net.ConnectException : Connection refused: connect ,,客户端/服务器 TCP 套接字错误

c# - 如何使用高级 OpenType 功能编写程序?

linux - KGDB远程调试报错

c++ - Visual Studio Code - C++ 调试器无法启动

debugging - 我在哪里可以找到 --dev 标志生成的信息?还是有办法让它更冗长?