C# 数组中出现意外输出

C# 数组中出现意外输出,c#,arrays,console,queue,C#,Arrays,Console,Queue,所以我今天看到这个问题 我想我会努力做到这一点,因为这是一个常见的问题。 我已经得到了一些工作输出,但它的格式不是我所期望的 这是我的更新代码: 客户类别: class Customer { private string name; private int checkOutTime; public Customer() { name = "john"; checkOutTime = 500; } public

所以我今天看到这个问题

我想我会努力做到这一点,因为这是一个常见的问题。 我已经得到了一些工作输出,但它的格式不是我所期望的

这是我的更新代码:

客户类别:

class Customer
{

    private string name;
    private int checkOutTime;

    public Customer()
    {
        name = "john";
        checkOutTime = 500;
    }

    public Customer(string name, int checkOutTime)
    {
        this.name = name;
        this.checkOutTime = checkOutTime;
    }
}
注册类别:

class Register
{
    public Customer[] customers = new Customer[100];
    public string[] names = { "jan", "peter", "hans", "karel", "tim", "rick", "Lewbert", "borat", "Sharkisha", "Bobo" };
    public Random rnd = new Random();
    public Queue<Customer> Line = new Queue<Customer>();

    public Register(int amount, Register[] r, int id)
    {
        for (int i = 0; i < amount; i++)
        {
            customers[i] = new Customer(names[rnd.Next(0, 8)], rnd.Next(900, 5000));
            Line.Enqueue(customers[i]);
            if (Line.Count % 4 == 0)
            {
                id++;
                amount = amount - 4;
                r[id] = new Register(amount, r, id);
            }
        }
    }
}
我得到的输出是嵌套的。这表明我的寄存器中有一个寄存器,而不是银行中的多个寄存器


谁能给我指出正确的方向。

我在你的帖子中没有看到任何产生输出的代码。您得到的是什么输出以及它来自何处?如果它确实继承了,它可能是生成额外寄存器的主要方法吗?如果您不想在寄存器中包含寄存器,请不要这样做。提示:您的类程序,以及您的类寄存器,有一个属性银行寄存器声明。创建的每个寄存器对象都维护其自己的bankRegisters数组。拿支笔画一个程序流程图,以及哪个对象拥有哪个特定的bankRegisters数组,你们会看到……寄存器几乎肯定不会从程序继承。寄存器毕竟不是一种更具体的程序类型。填充bankRegisters数组的逻辑应该在program类中,而不是在Registers构造函数中。@elgonzo-Hmm,但我的register类中没有声明,对吗?我正在将它添加到我在program.cs中创建的数组中。我试着画我的程序流程,但可能只是缺少了一点知识。你能教我我做错了什么吗?
class Program
{        
    static void Main(string[] args)
    {
        Register[] bankRegisters = new Register[10];
        Register r = new Register(12, bankRegisters, 0);
    }
}