4 回答

TA貢獻1820條經(jīng)驗 獲得超3個贊
如果您需要刪除多個項目,您可以將它們添加到臨時列表并使用 removeAll
// creating ArrayList
java.util.List<String> list = new ArrayList<>();
list.add("apple");
list.add("banana");
list.add("mango");
list.add("barry");
java.util.List<String> needToRemove = new ArrayList<>();
needToRemove.add("apple");
needToRemove.add("banana");
// removeAll will remove multiple elements,
// We can pass any collection like Set, List or any other
list.removeAll(needToRemove);
System.out.println("After Removed From List:");
list.forEach(System.out::println);

TA貢獻1790條經(jīng)驗 獲得超9個贊
正如我所見,您傳遞給removeOrderItem方法的數(shù)組列表是一個字符串列表,而您在類中的數(shù)組列表是一個OrderItem. 所以首先你必須找到這兩個列表之間的共同點。
假設(shè)模型OrderItem有一個包含每個訂單名稱的字段 ( orderItem.getName())。itemArray方法中的是removeOrderItem一個列表,其中包含您要刪除的一些訂單的名稱。
好的,在這種情況下,我們可以這樣做:
public void removeOrderItem(ArrayList<String> itemArray) {
List<OrderedItem> tempList = new ArrayList<>();
for (OrderedItem food: this.order) {
for (String foodName: itemArray) {
if (food.getName().equals(foodName))
tempList.add(food);
break;
}
}
this.order.removeAll(tempList);
}

TA貢獻1853條經(jīng)驗 獲得超6個贊
Arraylist.clear(); 方法可用于清除數(shù)組列表 Arraylist.removeAll(); 方法刪除數(shù)組列表的所有元素。這兩種方法都會清除列表中的元素。clear() 方法具有更好的性能,因為它必須執(zhí)行的行數(shù)更少。此鏈接https://howtodoinjava.com/java/collections/arraylist/empty-clear-arraylist/提供了這兩種方法的源代碼
添加回答
舉報