我有一个方法 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]
迭代未知数量的字符串列表并将它们一一添加到以字符串作为参数的方法中的最佳方法是什么?
非常感谢
编辑 print 语句在 for 循环中,这就是输出相乘的原因
最佳答案
将这些打印移到 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 次。
关于java - 列表问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20532277/