double price
产品单价
Boolean equals(Object object)
若两个产品相同则返回true,否则返回false
Orderltem
Product product
订单项中的产品
int quantity
产品的订购数量
Product getProduct()
获取订单项中的产品
Order
ArrayList(Orderlten) items
订单中包含的订单项
OrderList
ArrayList(Order)orders
订单
void addOrder(0rder order)
向订单列表中添加新订单
int getNumberOfOrders()
获取订单列表中的订单总数
SalesSystem
ProductList catalog
产品目录
OrderList sales
订单列表
void statistic()
依次统计产品目录中每个产品的订购总量,并打印 出每个产品的编号、说明、订购总量和订购金额
可以使用类java.util。ArrayList来实现对象的聚集关系,如图4-1中OrderList与Order之间的聚集关系。for-each循环提供了一种遍历对象集合的简单方法。在for-each循环中,可以指定需要遍历的对象集合以及用来接收集合中每个元素的变量,其语法如下: for(用来接收集合中元素的变量:需要遍历的对象集合),如果要使用for-each循环来遍历对象集合,那么包含该对象集合的类必须实现接口java.util.Iterable。Java程序1-1和Java程序1-2分别给出了类OrderList和方法statistic的Java代码。
[Java程序1-1]
import java.util.*;
public class OrderList __(1)__ {
private ArrayList orders;
public OrderListO {
this.orders = new ArrayList(Order) 0;
}
public void addOrder(Order order) {
this.orders, add (order);
}
public Iterator iteratorO {
return __(2)__;
}
public int getNunberOfOrders() {
return this.orders. size();
}
}
[Java程序1-2]
import java.util.*;
public class SalesSystem {
private ProductList catalog;
private OrderList sales;
private static PrintWriter stdOut = new PrintWriter(System.out,true);
public void statistic(){
for(Product product : __(3)__{
int number = 0;