我有一个方法setTopping(String topping),它将String作为参数。将字符串添加到列表中,然后根据字符串是什么来设置值。例如萨拉米香肠0.6,真菌0.5等。
现在我有一个字符串列表。它可能包含1、2、3或4个字符串。我想依次将第一个字符串添加到choiceTopping()方法中,然后添加第二个字符串,然后如果有一个,则添加第三个字符串。
但是,在添加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]
遍历列表中未知数量的String并将它们逐一添加到以Strings作为参数的方法中,最好的方法是什么?
非常感谢
编辑
打印语句在for循环中,这就是输出乘以的原因
最佳答案
在以下位置移动这些打印件:
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总是会打印完整列表,但最后只想打印1次。