2016-03-24 33 views
0
if(packageInput.equals(A)) 
    hoursA = JOptionPane.showInputDialog("Enter number of hours used:"); 

    rateA=Integer.parseInt(hoursA); 

    if(rateA > 10) 
{ 
    optionA=(rateA - 10) * 2.00 + 9.95; 

    JOptionPane.showMessageDialog(null, "The total bill for the month is $ "   
                  + optionA);} 

    else 
    { 
    rateA=Integer.parseInt(hoursA); 

    optionA=(rateA*0) + 9.95 
    JOptionPane.showMessaageDialog(null, "The total bill for the month is $ " 
                   + optionA);} 

我不知道該怎麼做才能使這個工作我不斷找到一個找不到符號錯誤,對我來說這沒有意義,因爲我已經使用JOptionPane在程序的早期階段,沒有錯誤。錯誤說找不到符號

java:47: error: cannot find symbol 
     JOptionPane.showMessaageDialog(null, "The total bill for the month is $ " 
        ^
    symbol: method showMessaageDialog(<null>,String) 
    location: class JOptionPane 

任何建議,將不勝感激和解釋,所以我可以學會不要再這樣做。

回答

0

兩個問題:

if(packageInput.equals(A)) 
    hoursA = JOptionPane.showInputDialog("Enter number of hours used:"); 
rateA=Integer.parseInt(hoursA); 

如果if條件爲假則hoursA將初始化。如果你打算兩個語句是在if語句的true分支,把括號圍繞兩者在

if(packageInput.equals(A)) { 
    hoursA = JOptionPane.showInputDialog("Enter number of hours used:"); 
    rateA=Integer.parseInt(hoursA); 
} 

但是,實現這兩個hoursArateA將保持未初始化,如果if條件是假的,你會得到如果後面的代碼引用了任何一個變量,則會出現相同的錯誤

JOptionPane.showMessaageDialog 

showMessageDialog拼寫錯誤。當它只有一個時,它有兩個a個字符。

+0

即使有else語句?或者我應該爲其他選項(B,C)提供一個else語句。 – Icodin

+0

查看已更新的答案 –