2012-05-16 84 views
-1

我有一個問題,我不知道如何解決。現在存儲輸入,並打印出一個字符串取決於輸入 - Java

   thisPizza = pizzaPick.nextInt(); 

       if((thisPizza > 0) && (thisPizza < pizza.length)) 
       { 
       orderList[pizzaCount++] = thisPizza; 
       sizeMethod(); 
       System.out.println("\nSubtotal: $" + moneyCounter + "\n"); 
       } 

,在我的程序發生了什麼,是它會提示用戶輸入他們想要的比薩,然後在最後,它打印出來。它還要求披薩的大小......如果他們輸入1,它會很大,如果他們輸入2,它會很小......我需要的是,以便在最後打印出爲了(在這個「爲」語句等)

for (int i = 1; i < pizzaCount; i++) 
    { 
    System.out.println (pizza[orderList[i]]); 
    } 

但後來也打印出比薩餅的大小取決於其大小,他們選擇對每個比薩餅(即小或大)。所以,如果他們選擇了1,這將是小,如果他們選擇了2那將是大......所以最終的結局會是這樣的:

2 - 鹹 - 大

1奶酪 - 小

10意大利 - 小

3-培根 - 大

5素食 - 大

我已經得到了它的工作,打印出的比薩,我只需要它打印出來每個的大小,在它旁邊。謝謝!!

+0

所以我沒有看到任何代碼有關讀取或存儲的大小。你可以發佈嗎?如果您無法在比薩餅上存儲大小,我會查看像數據結構這樣的地圖,它會將比薩餅與大小相關聯,或者創建一個類來讀取和存儲兩者,這可能是更好的選擇。沒有足夠的信息可以說明。所以我有點困惑你的編碼問題是什麼,你能澄清一下嗎?還有什麼是orderedList和比薩的類型? – pippin1289

+0

@ pippin1289好吧,[這是我的整個代碼的鏈接...](https://www.dropbox.com/sh/iyv3ay8w9pzhzw3/HtxvYV--cA/Pizza%20Program.txt) –

+0

我需要的是如此比薩的輸出包括每個披薩的尺寸......每個披薩的尺寸是在用戶選擇一個比薩後獲得的...... {它在哪個比薩尺寸下方法()} ..所以,我需要一些方法來存儲輸入比薩餅的大小,每個單獨的比薩餅......是否更清楚? –

回答

0

您可以在println統計中調用一個方法來獲取比薩的大小並返回一個大小的字符串。例如。

System.out.println (pizza[orderList[i]] + pizzaSize(i)) 

private String pizzaSize(int i) 
{ 
String large = "large"; 
String small = "small"; 

if(sizeArray[i] == 1) 
return large; 

else if (sizeArray[i] == 2) 
return small; 
} 

很抱歉,如果代碼不完美我只是學習,但我的兩分錢的價值無論如何

+0

謝謝,我明白你的意思了......但我怎樣才能真正存儲每個披薩的大小? [這是我所有的代碼的鏈接](https://www.dropbox.com/sh/iyv3ay8w9pzhzw3/HtxvYV--cA/Pizza%20Program.txt)...那麼我怎麼能實際存儲int'size'爲每個單獨的披薩? –

2

您的比薩餅創建一個類,那麼你可以處理你的輸出和性能非常好(見本樣本碼)。然後輸出只是使用System.out.println(myPizzaObject.toString());

class Pizza { 
    String name; 
    int size; 
    String sizeName; 
    ... 
    public Pizza(String name, int size) { 
     this.name = name; 
     this.size = size; 
     parseSizeName(this.size); 
    } 

    private parseSizeName(int size) { 
     switch (size) { 
      case 1: 
       this.sizeName = "Large"; break; 
      case 2: 
       this.sizeName = "Small"; break; 
     } 
    } 


    public String toString() { 
     return "Name: " + this.name + ", Size: " + this.sizeName; 
    } 
+0

Whoooa ..太先進了......你能解釋一下實際發生的事情,以便我能理解嗎? [這是我的所有代碼的鏈接](https://www.dropbox.com/sh/iyv3ay8w9pzhzw3/HtxvYV--cA/Pizza%20Program.txt)如果有幫助... :)謝謝! –

+0

「比薩」類是您將來創建的所有比薩餅的模板。您可以定義比薩包含哪些屬性和功能(=方法)。所以在這個例子中,一個Pizza的名字是String,大小的值是Integer,大小的值是String。 parseSizeName方法可以轉換相關字符串表示中的整數大小值。方法toString返回一個字符串值和你需要的所有信息,這樣你就可以在屏幕上打印它等等...... – HavanaBanana

+0

如何創建一個披薩?比薩薩拉米比薩=新比薩(「薩拉米比薩」,1);如何在屏幕上打印披薩?的System.out.println(salamiPizza.toString()); --->詳細閱讀:http://java.sun.com/developer/onlineTraining/Programming/BasicJava2/oo.html – HavanaBanana

相關問題