我是java编程的新手。我试图编写一个代码,将温度从华氏温度转换为摄氏温度,反之亦然,我在解析错误时到达文件的末尾。那么我应该怎么做才能解决它
package fahrenheittocelsius;
import java.util.Scanner;
public class Fahrenheittocelsius
{
public static void main(String[] args)
{
String firstchoice ;
String ftc ="fahrenheit to celsuis" ;
String ctf = "celsius to fahrenheit";
System.out.println("Do you want to convert from 'fahrenheit to celsuis' or 'celsius to fahrenheit' ");
Scanner firstscan = new Scanner(System.in);
firstchoice = firstscan.nextLine();
if (firstchoice.equals(ftc) );
{
System.out.println("Write in the temperature in Fahrenheit that you want to convert it to celsius ");
Scanner scan1 = new Scanner(System.in);
double f ;
f = scan1.nextDouble();
double c ;
c= (5/9.0)* (f-23) ;
System.out.println("the temperature in celsius is " + c );
}
if (firstchoice.equals(ctf) );
{
System.out.println("Write in the temperature in celsuis that you want to convert it to fahrenheit ");
Scanner scan2 = new Scanner(System.in);
double CC ;
double FF ;
CC = scan2.nextDouble();
FF= (CC * 2) + 30 ;
System.out.println("the temperature in celsius is " + FF);
}
}
答案 0 :(得分:2)
这意味着您忘记了}
某个地方。
我计算4个开口花括号,但只有3个闭合括号。寻找你错过的地方。
另外,在if
语句后删除分号。
if(someCondition){
//do stuff
}
不是
if(someCondition);{
//do stuff
}
答案 1 :(得分:1)
你的第二个如果没有结束}
也建议,不要让用户编写字符串,而是让他写入int。 1摄氏度到华氏度,2华为摄氏度 - 摄氏度。 while语句中的switch和cases使这类程序更容易理解。您可以添加案例0以退出并结束程序。