2012-04-24 89 views
0

的問題是:我在使用JOptionPane的if/else語句時遇到問題?

Q.Write使用,提示用戶對話框的程序作出選擇比薩餅 大小 - S,M,L,或X - 然後顯示價格爲$ 6.99 ,相應地爲8.99美元,12.50美元或15.00美元。將程序保存爲PizzaChoice.java。

這個問題我需要使用JOptionPane的if/else語句,使用對話框。

public class PizzaChoice { 

    public static void main(String[] args) { 
    String choice; 
    String small;  
    String medium; 
    String extraLarge; 

    choice= JOptionPane.showInputDialog("Enter yur choice of pizza :"+" S, M, L, X"); 
    double s,S; 
    //double s2= Double.parseDouble(small); 

    if(s==S){ 
     System.out.println("$6.99"+s); 
    } 

    } 
} 

我不能超過這個。我嘗試了很多不同的方式,但仍然無法很好地編寫代碼。

回答

0

用戶的選擇實際上存儲在您將JOptionPane放在右側的變量中,該變量恰當地命名爲choice

嘗試這樣:

String small = "S"; 
. 
. 
. 
String choice; 
double price = 0.0; 
choice = JOptionPane.showInputDialog("Enter yur choice of pizza :"+" S, M, L, X"); 

if(choice.equals(small)) 
{ 
    price = ....; 
} 
+0

thanx的幫助..非常感謝 – 2012-04-28 09:12:56

2

由於這是家庭作業,我不會給你整個代碼。使用選項對話框有一個很好的方法。

String[] pizzaSizes = {"Small", "Medium", ....}; 
int option = JOptionPane.showOptionDialog(null, "Make your choise", "Pizza size", 0, JOptionPane.QUESTION_MESSAGE, null, pizzaSizes, null}; 

option變量是pizzaSizes數組中所選披薩的索引。

現在,您可以製作一個與價格平行的數組。

String[] prices = {"$ 6.99", ... }; 

現在,顯示價格的消息就像這樣簡單。 (它不使用IFS,但我喜歡比的if/else這個工作更多):

String message = "Pizza " + pizzaSizes[option] + " costs " + prices[option] + "."); 
+0

Thanss它幫助了很多 – 2012-04-26 18:30:34

+0

@MushfiqurrahmanSajid:當有人幫你出,您可以通過點擊答案分數下的勾號來接受幫助您的答案。它會變綠,現在你的問題被標記爲已解決。 – 2012-04-26 18:33:20

+0

抱歉,我不知道規則,我真的不知道它。抱歉!對於所有人來說,感謝你的幫助。 :-) – 2012-04-28 08:59:29