當我編譯代碼時它告訴我我有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);
}
}
}
當我打電話的方法攝氏和華氏方法發生錯誤,我不知道如果我允許我的時候調用的方法使用的變量。然而,我仍然無法找到任何說不允許的事情。
'celcius'和'fahrenheit'都不會被賦值。 –
,你永遠不會使用'溫度' –
你在哪裏初始化'celcius'或'華氏'? –