java - 列表问题

标签 java arraylist

我有一个方法 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/

相关文章:

java - actionPerformed 在展开窗口时触发

java - 同步对 SimpleDateFormat 的访问

java - 试图在 ArrayList<Float> 中找到最大元素,在 Java 中

java - 为什么我在高级 for 循环中收到 java.util.ConcurrentModificationException?

java - 从数据库按列获取字符串后将字符串转换为枚举

java - 在Java中,如何删除Sqlite表

Java:凸多边形的周长

java - 在 ArrayList 中搜索相同的对象并合并价格值而不是添加

java - ArrayList 中的 Android Studio html View

java - java 中的 new String()