编辑时间:我有这些食物:肉、奶酪、苹果我为它们申报了清单:
List<String> foods = new ArrayList<>(); List<Integer> quantity = new ArrayList<>();
在 foods 我把他们的名字和名字储存在 quantity 他们的数量。一种食物的最大量是7。例如,如果我们要添加10块肉,必须这样储存:列表索引0索引1食品质量73有没有办法做到这一点,或者有其他(或更简单的)方法?
foods
quantity
mdfafbf11#
创建一个对象来存储item(meat/apple/cheese)和quantity,使用while循环遍历quantity,并设置item对象。
private static final int MAX_ALLOWED_QUANTITY = 7; public static void main(String[] args) { List<Order> orderList = new ArrayList<Order>(); placeOrder(orderList, "meal", 10); for (Order orderObj : orderList) System.out.println("Item - "+orderObj.getItem()+", Quantity - "+orderObj.getQuantity()); } private static void placeOrder(List<Order> orderList, String item, int quantity) { while (quantity > 0) { Order orderObj = new Order(); orderObj.setItem(item); if (quantity >= MAX_ALLOWED_QUANTITY) orderObj.setQuantity(MAX_ALLOWED_QUANTITY); else orderObj.setQuantity(quantity); orderList.add(orderObj); quantity = quantity - MAX_ALLOWED_QUANTITY; } }
输出
Item - meal, Quantity - 7 Item - meal, Quantity - 3
1条答案
按热度按时间mdfafbf11#
创建一个对象来存储item(meat/apple/cheese)和quantity,使用while循环遍历quantity,并设置item对象。
输出