Java 我需要制作一个celcius-fahrenheit转换器和一个tester类,并允许用户选择是从C到F还是从F到C
有人能给我解释一下,如何用tester类编写一个程序,并以此代码为基础来帮助我完成这项工作吗? //此程序将用户输入从摄氏度转换为华氏度,反之亦然Java 我需要制作一个celcius-fahrenheit转换器和一个tester类,并允许用户选择是从C到F还是从F到C,java,Java,有人能给我解释一下,如何用tester类编写一个程序,并以此代码为基础来帮助我完成这项工作吗? //此程序将用户输入从摄氏度转换为华氏度,反之亦然 import java.io.*; class Converter { // variables String input; double fahrenheit; double celcius; //constructor with 3 parameters to initialize the variabl
import java.io.*;
class Converter
{
// variables
String input;
double fahrenheit;
double celcius;
//constructor with 3 parameters to initialize the variables
Converter(String converterInput, double converterFahrenheit, double converterCelcius) throws IOException
{
InputStreamReader inStream = new InputStreamReader(System.in);
BufferedReader stdin = new BufferedReader(inStream);
input = converterInput;
fahrenheit = converterFahrenheit;
celcius = converterCelcius;
input = stdin.readLine();
fahrenheit = Double.parseDouble(input);
input = stdin.readLine();
celcius = Double.parseDouble(input);
}
// method
double fahrenheitConverter()
{
return fahrenheit = (9.0 / 5.0) * celcius + 32;
}
// method2
double celciusConverter()
{
return celcius = (5.0 / 9.0) * (fahrenheit - 32);
}
}
您需要让用户指定他们希望转换的方式。如果用户告诉程序摄氏温度和华氏温度已经是多少,那么程序不会做任何事情,您需要创建方法来分别将摄氏温度转换为华氏温度,反之亦然 对不起,这真是一团糟。:)
或者我没有足够的时间来预测你想要的方式。 无论如何,我不得不改变这一切。我为此道歉。 下面是一个有效的代码
import java.io.*;
import java.util.Scanner;
final class Converter
{
// variables
double input;
double fahrenheit;
double celcius;
//constructor with 3 parameters to initialize the variables
Converter() throws IOException
{
//InputStreamReader inStream = new InputStreamReader(System.in);
String temp;
System.out.print("Please enter the temperature : ");
Scanner key=new Scanner(System.in);
input = key.nextDouble();
System.out.print("The number you gave is ");
fahrenheit=(fahrenheitConverter(input));
System.out.print(fahrenheit + " fahreneit degree , if u entered a celcious value.\n");
celcius=(celciusConverter(input));
System.out.print("Or it is "+ celcius + " celcius degree , if u entered a celcious value.\n");
}
// method
double fahrenheitConverter(double inp)
{
double iput=inp;
double fah;
fah = (iput*1.8)+ 32;
return fah;
}
// method2
double celciusConverter(double inp)
{
double iput=inp;
double cel;
cel=(iput-32)*0.5555;
return cel;
}
public static void main(String[] args) throws IOException {
Converter x=new Converter();
}
}
但这只是代码,在正确的(在我看来)顺序。
程序需要获取两个信息项:值和度量。
我的意思是,您必须向用户询问温度(双倍数字)和
这个号码是多少,塞尔修斯还是法尔。
此外,您还需要一些防御措施,为ex.like输入错误抛出异常(ex用户输入,如,32,5,a13,2')
另外,我使用main()是为了使用它的紧凑性和简化结果。
你可以去上课,然后打电话
public static void main(String[] args) throws IOException {
Converter x=new Converter();
}
从课堂之外
除此之外,我很乐意提供任何帮助。具体帮助什么?什么是“催泪课”?你领先了。在为这个类编写测试类之前,这个类需要清理和改进,这是我不知道如何做的一部分。对不起,我应该在问题中加上这一点。谢谢,这很有帮助,我是为一个学校项目做这件事的,我们还没有学到很多这方面的东西,但这有助于澄清一些困惑。然而,我遇到的主要问题不是我的课程,而是如何清洁它并在测试类中使用它,因此如果它有帮助,你可以按V来帮助社区中有相同问题的其他人。现在关于这个问题,你所说的“清洁”是什么意思?不要为任何事情感到抱歉,这是一个互相帮助的社区,尽管如此,我还是一名学生。如何清洁*我所说的清洁是指一切都在它需要的地方,看起来很好,并按计划运行