首页 > 其他 > 详细

Queue 队列的使用

时间:2019-04-26 14:09:15      阅读:68      评论:0      收藏:0      [点我收藏+]

队列一个先进先出的对象集合

public class PlayChickTopicData : MonoBehaviour
{
    Queue<TopicData> topicDatas = new Queue<TopicData>();

    struct TopicData
    {
        public string topicData;
        public bool select;

        public TopicData(string strTopic, bool select)
        {
            topicData = strTopic;
            this.select = select;
        }
    }


    private void Start()
    {
        //入队
        topicDatas.Enqueue(new TopicData("驾驶装有ABS 系统的机动车,制动过急时同样会发生侧滑。", false));
        topicDatas.Enqueue(new TopicData("安装制动防爆死装置(ABS)的车辆,驾驶人发现汽车转向失效时,应轻踏制动踏板。", false));
        topicDatas.Enqueue(new TopicData("驾驶有ABS 系统的机动车,在紧急制动的同时转向会发生侧滑。", true));
        topicDatas.Enqueue(new TopicData("在坡道上掉头,每次停车时应用行车制动控制,不必使用驻车制动器。", false));
        topicDatas.Enqueue(new TopicData("夜间在城市道路超车前要鸣喇叭(变换远近灯光)示意前车,待前车让行后从左侧超越。", false));
        topicDatas.Enqueue(new TopicData("驾驶人持超过有效期的驾驶证可以在1年内驾驶机动车。查看本题分析", false));
        topicDatas.Enqueue(new TopicData("立交桥上一般都是单向行驶,车辆不必减速行驶", false));
        topicDatas.Enqueue(new TopicData("准驾车型为小型自动挡汽车的,可以驾驶低速载货汽车。", false));
        topicDatas.Enqueue(new TopicData("行车中遇残疾人影响通行时,应主动减速礼让。", true));
        topicDatas.Enqueue(new TopicData("因避让特种车辆而发生违法行为,被电子警察拍到时,可向交管部门复议。", true));
    }


    private void Update()
    {
        //输出移除队首的元素 出队
        if (Input.GetKeyDown(KeyCode.D))
        {
            if (topicDatas.Count > 0)
            {
                showQueue();
                TopicData topicData = topicDatas.Dequeue();
                UnityEngine.Debug.Log("题目"+ topicData.topicData);
                UnityEngine.Debug.Log("正确答案:"+ topicData.select);
            }
        }

        //移除所有元素
        if (Input.GetKeyDown(KeyCode.C))
        {
            topicDatas.Clear();
            showQueue();
        }
        UnityEngine.Debug.Log(topicDatas.Count.ToString());
    }
    
  
    void showQueue()
    {
        foreach (var value in topicDatas)
        {
            string str="";
            str += value.topicData + "   " + value.select + "|";
            UnityEngine.Debug.Log(str );
        }
    }

}

http://www.runoob.com/csharp/csharp-queue.html

Queue 队列的使用

原文:https://www.cnblogs.com/Ms-Sake/p/10773850.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!