2012-03-19 75 views
-3

我需要用我的程序,其将温度 两种方法我有打电话给我的方法 这里有一个问题是我的代码:方法调用错误

import java.io.*; 
import javax.swing.JOptionPane; 

public class Converter { 
    public static void main(String[] args) throws Exception{ 
     //BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); 
     String unit = JOptionPane.showInputDialog("Enter unit F or C: "); 

     String temp1 = JOptionPane.showInputDialog("Enter the Temperature: "); 


     double temp = Double.valueOf(temp1).doubleValue(); 




     public static double convertTemp(){ 
     if((unit.equals("F"))||(unit.equals("f"))){ 
     double c= (temp - 32)/1.8; 
     JOptionPane.showMessageDialog(null,c+" Celsius")); 
     } 

     else if((unit.equals("C"))||(unit.equals("c"))){ 
     double f=((9.0/5.0) * temp) + 32.0; 
     JOptionPane.showMessageDialog(null,f+" Fahrenheit"); 

} 
} 
} 
+5

不要只说“我有问题”。请解释究竟是什么问题。你有错误信息吗?然后复制并粘贴错误消息。程序是否给你一些与你预期不同的答案?然后告诉我们你的期望以及实际产出与此不同。 – Jesper 2012-03-19 13:34:22

+0

如果这是功课请标记... – hvgotcodes 2012-03-19 13:34:40

+0

和你的问题是什么? – 2012-03-19 13:34:43

回答

3
public static double { 
     if((unit.equals("F"))||(unit.equals("f"))){ 
     double c= (temp - 32)/1.8; 
     JOptionPane.showMessageDialog(null,c+" Celsius"); 
     } 

不是有效的Java。您需要创建一个方法,主要的方法

public static double convertTemp(){ 
... 
} 

,你将不得不参数添加到方法调用(在()之间)之外。

要清楚,你的文件应该是这样

public class Converter { 
    public static void main(String[] args) throws Exception{ 
     .... 
    } 

    public static double convertTemp(){ 
     .... 
    } 
} 
当然

,代码的肉去的方法声明中。

+1

而且没有方法名或参数列表来引导。 – 2012-03-19 13:36:30

+0

@Dave你说我的答案不完整,或者详细说明OP代码中的错误吗? – hvgotcodes 2012-03-19 14:13:18

+0

我一直收到一个错误:非法表达式开始: – 2012-03-19 14:20:32