当我编译代码时,它告诉我有2个错误,这两个变量都可能没有被初始化错误。变量摄氏和华氏是问题。我相信我已经用他们各自的方法初始化了它们。
import java.io.*;
class Converter
{
double celsius,fahrenheit,temperature,inFahrenheit,inCelsius;
double Celsius (double temperature)
{
celsius = (5.0 / 9.0) * (temperature - 32);
return celsius;
}
double Fahrenheit (double temperature)
{
fahrenheit = (9.0 / 5.0) * temperature + 32;
return fahrenheit;
}
}
public class ConverterTester
{
public static void main(String[] args)throws IOException
{
double temperature,fahrenheit,celsius;
InputStreamReader inStream = new InputStreamReader (System.in);
BufferedReader stdin = new BufferedReader (inStream);
String intemperature,inCelciusOrFahrenheit;
System.out.println("What is the temperature");
intemperature = stdin.readLine();
temperature = Double.parseDouble(intemperature);
System.out.println("What is the temperature you wish to convert to, Celsius or Fahrenheit");
inCelciusOrFahrenheit = stdin.readLine();
if (inCelciusOrFahrenheit.equals("Celsius"))
{
Converter Conversion1 = new Converter();
Conversion1.Celsius(celsius);
System.out.println("Your new temperature is " + celsius);
}
else if(inCelciusOrFahrenheit.equals("Fahrenheit"))
{
Converter Conversion2 = new Converter();
Conversion2.Fahrenheit(fahrenheit);
System.out.println("Your new temperature is " + fahrenheit);
}
else
{
System.out.println("Please enter a correct temperature");
System.exit(0);
}
}
}
当我调用Celsius方法和Fahrenheit方法时会出现错误,我不确定在调用方法时是否允许使用变量。然而,我无法找到任何说不允许的事情。
答案 0 :(得分:0)
你唯一的问题是你没有初始化温度,摄氏度或华氏度
在这里制作变量时:
double celsius,fahrenheit,temperature,inFahrenheit,inCelsius;
,你需要让温度等于20,例如20
我建议取出摄氏度和华氏度,或者将它们设置为等于摄氏度和华氏度,你设定等于温度......数学。