2012-03-19 93 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