我想稍微优化一下代码。所有要做的就是从阵列中删除产品。当我调用该方法deleteProduct(prod.getId())
时,它应该删除我首先添加的产品。
我可以使用for循环,那么如何删除数组中的产品。请问有什么指点吗?
public void deleteProduct(int productId) throws ProductNotFoundException {
Iterator<Product> it = allProducts.iterator();
Product p= null;
int pid = productId;
int i = 0;
if (!allProducts.isEmpty()) {
while(it.hasNext()){
p= it.next();
i= allProducts.indexOf(p);
if (p.getId().equals(productId)){
i= allProducts.indexOf(p);
allProducts.remove(i);
System.out.println("Successfully removed the product " + pid);
return;
}
}
}
throw new ProductNotFoundException ("No Such Product");
}