我的临时转换计划

时间:2014-06-04 00:48:12

标签: java

我不确定为什么我的程序不起作用。有人告诉我,我不应该把getCelcius放在构造函数中,但现在我卡住了。有帮助吗?我可能还有一些对程序无用的不需要的大括号。

import java.io.*;
class Temperature {
    //Assign varriables to int
    int factorC, factorF;
    int celcius, ferenheit;

    { 
        int getFactorC() { // Celsius
            return factorC;
        }
    }

    // declaring variables
    Temperature(int factorC, int factorF, int celcius, int ferenheit) {  
        setFactorC() {
            factorC = (9 / 5) * celcius + 32; //Calculate Celcius
        }
        {
            int getFactorF() { // Fahrenheit
                return factorF;
        }
    }

    {
        setFactorF() {
            factorF= (5 / 9) * ferenheit - 32; //Calculate Ferenheit
        }
    }
}
} //???

class TempConversion
{

1 个答案:

答案 0 :(得分:1)

您的代码存在许多问题,但我要做的第一件事就是格式化它:

class Temperature {

    //Assign varriables to int
    int factorC, factorF;
    int celcius, ferenheit;

    int getFactorC() { // Celsius
        return factorC;
    }

    Temperature(int factorC, int factorF, int celcius, int ferenheit) {
        this.factorC = factorC;
        this.factorF = factorF;
        this.celcius = celcius;
        this.ferenheit = ferenheit;
    }

    void setFactorC() {
        factorC = (9 / 5) * celcius + 32; //Calculate Celcius
    }

    int getFactorF() { // Fahrenheit
        return factorF;
    }

    void setFactorF() {
        factorF = (5 / 9) * ferenheit - 32; //Calculate Ferenheit
    }
}

快速提示:

  • 9/5为1且5/9为0.在Java中,当您对整数进行除法时,会得到一个整数。您可以将其替换为9.0/5.05.0/9.0