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

标签 java object

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/

相关文章:

javascript - 如何在Javascript中使用where条件获取对象名称数据列表?

java - 为什么使用 "s = --size"而不是 "s = size"?

java - 安卓计算器按钮不起作用

JavaScript 将属性 append 到对象

java - 我如何调用这个 Ffun() 并访问这个类?

javascript - 在 JavaScript 中的 Web Workers 中使用 Synaptic 库

swift - 如何实例化给定类型的对象

java - 字符串的下一个字典顺序更大的排列

java - 如何在jpa的@ManyToOne JoinColumn上执行 "in"查询而不查询实体

java - 限制一定数量的客户端连接到服务器