[英]How could I possibly use less variables?
我很快制作了一个小程序,将华氏温度转换为摄氏温度,并将摄氏温度转换为华氏温度,但是当我尝试使用一个变量时,它并不能完成所有步骤。 我能理解为什么,但是我无法弄清楚如何阻止它仅执行最后一个操作,因为我希望它按顺序执行所有操作。
据我所知,如果我对所有操作(例如-32,* 5和/ 9)使用相同的变量,则只会执行最后一个,因为我已经使用=
将该值分配为值,但是我不确定是否无论您是否在此,都将不胜感激,谢谢。
public class TempConversion{
//FahrenheitSteps
private int Fahrenheit;
private int FahrenheitA;
private int FahrenheitB;
private int FahrenheitC;
//CelciusSteps
private int Celcius;
private int CelciusA;
private int CelciusB;
private int CelciusC;
//Constructor
public TempConversion(){
Fahrenheit = 0;
Celcius = 0;
}
//Convert Fahrenheit to celcius
public void FahrenheitToCelcius(int Fahren){
CelciusA = Fahren - 32;
CelciusB = CelciusA * 5;
CelciusC = CelciusB / 9;
System.out.println(CelciusC + " Is the celcius equivalent");
}
//Convert Celcius to fahrenheit
public void CelciusToFahrenheit(int Celc){
FahrenheitA = Celc * 9;
FahrenheitB = FahrenheitA / 5;
FahrenheitC = FahrenheitB + 32;
System.out.println(FahrenheitC + " Is the fahrenheit equivalent");
}
}
您可以使用像这样的示例https://www.programmingsimplified.com/java/source-code/java-program-to-convert-fahrenheit-to-celsius
并以您的价值取代Scanner
。
import java.util.*;
class FahrenheitToCelsius {
public static void main(String[] args) {
float temperature;
Scanner in = new Scanner(System.in);
System.out.println("Enter temperature in Fahrenheit");
temperature = in.nextInt();
temperature = ((temperature - 32)*5)/9;
System.out.println("temperature in Celsius = " + temperature);
}
}
您可以组合以下三行:
CelciusA = Fahren - 32;
CelciusB = CelciusA * 5;
CelciusC = CelciusB / 9;
进入
Celcius = (Fahren-32) * 5 / 9;
您的celciusToFahrenheit方法可以完成相同的操作。 只要记住操作的顺序,在一行上执行多个数学运算就不会有问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.