C#之栈(Stack)和队列(Queue)的使用

其实栈和队列的使用并不难,只要了解了相关API就可以使用了。栈和队列基本api都相同,只有个别例外。
栈:Stack-----后进先出的方式处理集合。
队列:Queue-----先进先出的方式处理集合。

常用API

队列:(先进先出的方式处理集合)
Count 返回队列中的元素个数。
Enqueue() 在队列的尾端添加一个元素。
Dequeue() 在队列头部读取一个元素,并在该队列中删除该元素,如果在 调用Dequeue()方法时,队列中没有元素,就会抛出一个异常。
Peek() 在队列头部读取一个元素,但不删除它。

栈(后进先出的方式处理集合)
Count 返回栈中的元素个数
Push() 入栈的方法
Pop() 出栈的方法:读取一个元素,并在该队列中删除该元素,如果在调用Dequeue()方法时,队列中没有元素,就会抛出一个异常
**Peek()**读取一个元素,但不删除它

**栈和队列的初始化脚本:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class QueueAndStack : MonoBehaviour {
    Queue q;
    Stack s;
	// Use this for initialization
	void Start () {
        q = new Queue();
        s = new Stack();
        InitQueue();
        InitStack();
	}
	void InitQueue()
    {
        //队列:(先进先出的方式处理集合)
        //Count  返回队列中的元素个数
        //Enqueue()  在队列的尾端添加一个元素
        //Dequeue()  在队列头部读取一个元素,并在该队列中删除该元素,如果在调用Dequeue()方法时,队列中没有元素,就会抛出一个异常
        //Peek()  在队列头部读取一个元素,但不删除它

    }
    void InitStack()
    {
        //栈(后进先出的方式处理集合)
        //Count  返回栈中的元素个数
        //Push() 入栈的方法
        // Pop()  出栈的方法:读取一个元素,并在该队列中删除该元素,如果在调用Dequeue()方法时,队列中没有元素,就会抛出一个异常
        //Peek()读取一个元素,但不删除它
        s.Push(1);
        s.Push(2);
        s.Push(3);
        print(s.Pop());//3
        print(s.Pop());//2
        print(s.Peek());//1
        print(s.Count);//1
    }
}
这里有一个qq群:群号:319506028,名字:Unity、AR、VR俱乐部,里面有很多技术大神,可以在群里问问题(关于unity的任何问题,不限VR AR,群名不重要),欢迎你的加入。

你可能感兴趣的:(栈:Stack,队列:Queue,unity中栈和队列的使用,Stack)