public class CustomerManager {
private customer[] list;
private int maxcustomer;
private int numcustomer;
public CustomerManager(int size){
maxcustomer = size;
numcustomer = 0;
list = new customer[size];
}
//add customer
public boolean addcustomer(String Address, String Name){
customer x = new customer(Address, Name);
if(numcustomer < maxcustomer){
list[numcustomer] = x;
return true;
}
return false;
}
- 列出客户方法未列出客户
我认为这是因为数据没有正确传递给经理,但不确定我哪里出错了
public String listcustomer(){ String s = " "; int i; for(i = 0; i < numcustomer; i++){ s += list[i].getname();list[i].getaddress(); } return s; }
}
最佳答案
您好,欢迎来到 stackoverflow。
一些事情 - 编写 java 时 类应以大写字母开头,而变量和函数应以小写字母开头。
其次,当添加新客户时,您必须增加计数器
public boolean addcustomer(String address, String name){
Customer x = new Customer(address, name);
if(numcustomer < maxcustomer){
list[numcustomer] = x;
numcustomer++;
return true;
}
return false;
}
但我建议将客户存储在 Collection 中,例如 List 或 Set (以防止重复)。然后您不必担心增加计数器,因为您将内置它。
private Set<Customer> customers;
public CustomerManager(int size){
maxcustomer = size;
customers = new HashSet();
}
public boolean addcustomer(String address, String name){
Customer newCustomer = new Customer(address, name);
if(customers.size() < maxcustomer){
customers.add(newCustomer)
return true;
}
return false;
}
为了确保 Set 不会存储重复项,您必须正确实现 hashCode 和 equals more info
关于java - java 中的面向对象编程 ||不知道为什么我的客户名单不打印客户名单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60763970/