2013-12-11 210 views
0

我有一個方法setTopping(String topping),它將String作爲參數。將字符串添加到列表中,並根據字符串的內容設置一個值。如薩拉米0.6,真菌0.5等。列表故障

現在我有一個字符串列表。它可能包含1個,2個,3個或4個字符串。我想依次將第一個字符串添加到chooseTopping()方法中,然後再添加第二個字符串,如果存在第三個字符串,則添加第三個字符串。

但是加入3種配料後,我得到的輸出:

[0.6] 
    [salami] 
    [0.6, 0.7] 
    [salami, bacon] 
    [0.6, 0.7, 0.5] 
    [salami, bacon, fungi] 

當我期待:

[0.6, 0.7, 0.5] 
    [salami, bacon, fungi] 

什麼是通過一個未知數列表進行迭代的最佳方法字符串,並將它們逐個添加到將字符串作爲參數的方法中?

非常感謝

編輯 打印語句是在for循環,這就是爲什麼輸出是在爲後乘以

+0

這就是最好的方法。也許你的setTopping沒有按照你的預期實現。 – Blub

+0

我已經編輯了我的setTopping方法incase# –

+0

歡迎來到堆棧溢出!我們真的很想幫助你,但我們需要更多的上下文。你能提供包含這個for循環的完整方法嗎? –

回答

1

移動這些版畫:

for(int i = 0 ; i < toppings.size() ; i++){ 
    t.setTopping(toppings.get(i) ); 
    } 
    System.out.println(t.getCost()); 
    System.out.println(t.getTopping()); 
    System.out.println(b.getBase()); 

我認爲這些getcost並且gettopping將始終打印完整列表,但您只想在最後打印一次。