CustomerList为Customer对象的管理模块,内部用数组管理一组Customer对象,并提供相应的添加、修改、删除和遍历方法供CustomerView使用。
private Customer[] customers;// 用来保存客户对象的数组
private int total = 0;// 记录已保存客户对象的数量
之后创建带参的构造器,用来初始化customers数组
public CustomerList(int totalCustomer) {
customers = new Customer[totalCustomer];
}
totalCustomer指的是customers数组的最大空间
将指定的客户添加到数组中
public boolean addCustomer(Customer customer) {
if(total >= customers.length) {
return false;
}else {
customers[total] = customer;
total++;
return true;
}
}
//true是添加成功,false是添加失败
用参数customer替换数组中由index指定的对象
public boolean replaceCustomer(int index, Customer cust) {
if(index < 0||index>=total) {
return false;
}else {
customers[index] = cust;
return true;
}
}
删除指定索引位置上的客户
public boolean deleteCustomer(int index) {
if(index < 0||index>=total) {
return false;
}
for(int i = index;i<total-1;i++) {
customers[i] = customers[i+1];
}
//最后有数据的元素需要置空
customers[total-1] = null;
total--;
return true;
}
获取所有的客户信息
public Customer[] getAllCustomers() {
Customer[] custs = new Customer[total];
for(int i = 0;i<total;i++) {
custs[i] = customers[i];
}
return custs;
}
获取指定索引位置上的客户
public Customer getCustomer(int index) {
if(index < 0||index>=total) {
return null;
}else {
return customers[index];
}
}
public int getTotal() {
return total;
}