其他分享
首页 > 其他分享> > 第十七章 泛型

第十七章 泛型

作者:互联网

1.什么是泛型
封装的数据不指定特定类型,而在声明或实例化期间指定类型,以最大限度的重用代码、保护类型安全。

class Queue
{
    private const int DEFAULTQUEUESIZE = 100;
    private int head=0, tail=0;
    private int elementCount = 0;
    private int[] queue;    

    public Queue()
    {
        this.queue = new int[DEFAULTQUEUESIZE];
    }

    public void Enqueue(int item)
    {
        if(elementCount == this.queue.Length)
        {
            throw new Exception("Queue full");
        }

        this.queue[head] = item;
        head++;
        head %= this.queue.Length;
        elementCount++;
        
    }

    public int Dequeue()
    {
        if(elementCount == 0)
        {
            throw new Exception("Queue empty");
        }

        int item = this.queue[tail];
        tail++;
        tail %= this.queue.Length;
        elementCount--;
        return item;
    }
}

public static void Main(string [] args)
{
    Queue queue = new Queue();
    queue.Enqueue(90);
    queue.Enqueue(10);
    queue.Enqueue(20);
    Console.WriteLine($"{queue.Dequeue()}");
    Console.WriteLine($"{queue.Dequeue()}");
    Console.WriteLine($"{queue.Dequeue()}");

    // 输出:
           90
           10
           20
}

标签:第十七章,queue,item,int,private,Queue,elementCount,泛型
来源: https://www.cnblogs.com/abc1728/p/14511976.html