java程序中的<no main =“”classes =“”found =“”>

时间:2016-09-16 17:31:45

标签: java

您好我正在编写一个将Celsius转换为Fahrenheit的java程序。一个自定义方法将计算转换并将其传递给调用它的main方法。在main方法中,一个循环将被调用,只要0-100并递增10 ..我已经尝试了一些其他建议我有看到这个错误,但没有运气..这是我的代码,并提前感谢

package sknight_project10_orig;

public class SKnight_Project10_ORIG
{
    public static double main(String[] args)
    {
        double Celsius = 0.0;
        double Fahrenheit = 0.0;

        //For loop to increment by 10 from 0-100
        for (int i = 0; i < 100; i++)
        {
            convertTemp(Celsius);
            System.out.println(Celsius + " = " + Fahrenheit);
            i = i + 10;
        }
        return Celsius;
    } 

     public static Double convertTemp(Double Celsius)
    {
        double Fahrenheit = Celsius * 1.8 + 32;
        return Fahrenheit;
    } 
}

3 个答案:

答案 0 :(得分:0)

Main必须返回void:

package sknight_project10_orig;

public class TemperatureConverter {

    public static void main(String[] args) {
        for (String arg : args) {
           double c = Double.parseDouble(arg); 
           System.out("c: " + c + " f: " + convertTemp(c));
        }
    } 

     public static double convertTemp(double c) {
        return 1.8*c+ 32;
    } 
}

请学习并遵循Java编码标准。你的变量名是错误的。

答案 1 :(得分:0)

A&#34; main&#34;需要在签名中无效。您想如何使用计算值?

public static void main(String[] args)
{ ...
}

这就是你试图运行的一个名为main的函数的方法。

现在因为它是&#34; void&#34;,你不应该返回Celsius

您可以打印出来以确保它正常工作。

答案 2 :(得分:0)

主要功能必须返回无效,您不能返回双精度型。 以下是一些错误: - 在执行convertTemp之前,你从未设置过Celcius。 - 由于Celcius是双倍的,你必须施放它,因为我是int。 - 您需要将convertTemp的结果分配给Farhenheit。 - 我不会修复它,但你需要使用camelCase作为变量名,而不是PascalCase。

public static void main(String[] args)
{
    double Celsius = 0.0;
    double Fahrenheit = 0.0;

    //For loop to increment by 10 from 0-100
    for (int i = 0; i < 100; i+=10)
    {
        Celcius = (double) i;
        Fahrenheit = convertTemp(Celsius);
        System.out.println(Celsius + " = " + Fahrenheit);
    }
}