gpt4 book ai didi

java - java 中的面向对象编程 ||不知道为什么我的客户名单不打印客户名单

转载 作者:行者123 更新时间:2023-12-02 08:51:04 24 4
gpt4 key购买 nike

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;

}
  1. 列出客户方法未列出客户
  2. 我认为这是因为数据没有正确传递给经理,但不确定我哪里出错了

    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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com