?? order.java
字號:
import java.util.*;
/**
* Maintains the information of a order. Contains a collection of
* {@link OrderItems} objects.
*
* @author Wang Yunsheng
* @version 1.0.0
* @see OrderItems
*/
public class Order implements Iterable<OrderItem> {
/* Collection of <code>OrderItems</code> objects. */
private ArrayList<OrderItem> items;
/**
* Constructs an empty order.
*/
public Order() {
this.items = new ArrayList<OrderItem>();
}
/**
* Adds a {@link OrderItems} object to this order.
*
* @param OrderItem
* the {@link OrderItems} object.
*/
public void addItem(OrderItem orderItem) {
this.items.add(orderItem);
}
/**
* Removes a {@link OrderItems} object to this order.
*
* @param OrderItem
* the {@link OrderItems} object.
*/
public void removeItem(OrderItem orderItem) {
this.items.remove(orderItem);
}
/**
* Returns an iterator over the orderItems in this order.
*
* return an {@link Iterator}
*/
public Iterator<OrderItem> iterator() {
return this.items.iterator();
}
/**
* Returns the {@link orderItems} object with the specified
* <code>product</code>.
*
* @param product
* the product of an orderItem.
* @return The {@link orderItems} object with the specifed product. Returns
* <code>null</code> if the object with the product is not found.
*/
public OrderItem getItem(Product product) {
for (Iterator i = this.iterator(); i.hasNext();) {
OrderItem orderItem = (OrderItem) i.next();
if (orderItem.getProduct().equals(product)) {
return orderItem;
}
}
return null;
}
/**
* Returns the number of items in the order.
*
* @return the number of {@link items} objects in this order
*/
public int getNumberOfItems() {
return this.items.size();
}
/**
* Returns the totalCost of the order.
*/
public double getTotalCost() {
double totalCost = 0.0;
for (Iterator i = this.iterator(); i.hasNext();) {
OrderItem orderItem = (OrderItem) i.next();
totalCost += (orderItem.getProduct()).getPrice() * orderItem.getQuantity();
}
return totalCost;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -