【发布时间】:2018-02-25 16:51:12
【问题描述】:
我正在尝试编写一个接收华氏温度并返回等效摄氏温度的方法。为此,我的任务是在 main 中编写一个循环,该循环调用一个方法并打印华氏值的转换:0、5、10、15、...、100。
这是我所拥有的:
import java.util.Scanner;
public class TemperatureConverter {
public static void main(String[] args) {
int F;
F = 0;
double tempCelsius;
while (F <= 100) {
convert(F);
System.out.println(F + " degrees F corresponds to " + tempCelsius + " degrees C");
F = F + 5;
}
}
public static double convert(int F) {
tempCelsius = ((5.0 / 9.0) * (F - 32));
return tempCelsius;
}
}
我得到的错误是
/TemperatureConverter.java:32:错误:找不到符号
温度摄氏度 = ((5.0 / 9.0) * (F - 32));
^
我很欣赏任何方向。
【问题讨论】:
-
你知道变量作用域吗?如果在方法中声明局部变量,则不能从其他方法访问它。您应该删除
convert()中的临时分配,而使用tempCelsius = convert(F);中的返回值。附带说明一下,Java 有一个方便的+=运算符;F = F + 5可以写成F += 5;。