unity---对象池

news/2025/1/13 11:46:57/

目录

1、Queue定义

2、优点

3.注释

4、Queue的属性

5. Queue的方法

6、Queue的使用示例

7.备注


1、Queue定义

System.Collections.Queue类表示对象的先进先出集合,存储在 Queue(队列) 中的对象在一端插入,从另一端移除。

2、优点

1、能对集合进行顺序处理(先进先出)。

2、能接受null值,并且允许重复的元素。

3、 Queue的构造器

构造器函数

3.注释

Queue ()

初始化 Queue 类的新实例,该实例为空,具有默认初始容量(32)并使用默认增长因子(2.0)。

Queue (ICollection)

初始化 Queue 类的新实例,该实例包含从指定集合复制的元素,具有与所复制的元素数相同的初始容量并使用默认增长因子。

Queue (Int32)

初始化 Queue 类的新实例,该实例为空,具有指定的初始容量并使用默认增长因子。

Queue (Int32, Single)

初始化 Queue 类的新实例,该实例为空,具有指定的初始容量并使用指定的增长因子。

4、Queue的属性

属性名

Count

获取 Queue 中包含的元素数。

5. Queue的方法

Void Clear()

从 Queue 中移除所有对象。

Bool Contains(object obj)

确定某元素是否在 Queue 中。

Object Clone()

创建 Queue 的浅表副本。

Void CopyTo(Array array,int index)

从指定数组索引开始将 Queue 元素复制到现有一维 Array 中。

Object Dequeue()

移除并返回位于 Queue 开始处的对象。

Void Enqueue(object obj)

将对象添加到 Queue 的结尾处。

Object Peek()

返回位于 Queue 开始处的对象但不将其移除。

Object[]ToArray()

将 Queue 元素复制到新数组。

Void TrimToSize()

将容量设置为 Queue 中元素的实际数目。

6、Queue的使用示例

using System.Collections.Generic;
using UnityEngine;public class Pool_foodTip : MonoBehaviour
{[SerializeField]private Transform pare;[SerializeField]private FoodTip fab;private static Pool_foodTip _ins;public static Pool_foodTip ins{get{return _ins;}}private int poolCount = 30;private Queue<FoodTip> foodPool = new Queue<FoodTip>();void Awake(){_ins = this;}public FoodTip GetFoodTip(){if (foodPool.Count > 0){return foodPool.Dequeue();}else{return CreateFoodTip();}}private FoodTip CreateFoodTip(){FoodTip ft = Instantiate(foodTip, pare);return ft;}public void CheckTip(FoodTip ft){if (foodPool.Count > poolCount){Destroy(ft.gameObject);}else{foodPool.Enqueue(ft);}}
}



7.备注

1、Queue 的容量是 Queue 可以保存的元素数。Queue 的默认初始容量为 32。向 Queue 添加元素时,将通过重新分配来根据需要自动增大容量。可通过调用 TrimToSize 来减少容量。等比因子是当需要更大容量时当前容量要乘以的数字。在构造 Queue 时确定增长因子。默认增长因子为 2.0。

2、Queue 能接受空引用作为有效值,并且允许重复的元素。

3、空引用可以作为值添加到 Queue。若要区分空值和 Queue 结尾,请检查 Count 属性或捕捉 Queue 为空时引发的 InvalidOperationException异常。


http://www.ppmy.cn/news/498125.html

相关文章

搜索引擎的个性化搜索:为何搜索结果因人而异

&#x1f482; 个人网站:【海拥】【游戏大全】【神级源码资源网】&#x1f91f; 前端学习课程&#xff1a;&#x1f449;【28个案例趣学前端】【400个JS面试题】&#x1f485; 寻找学习交流、摸鱼划水的小伙伴&#xff0c;请点击【摸鱼学习交流群】 目录 前言搜索引擎的工作原理…

索尼为收购工作室准备,对抗微软?

对比来说&#xff0c;索尼方面不但没有增加新的工作室&#xff0c;反而在过去两年内关闭了一些工作室。面对微软的步步紧逼&#xff0c;索尼最新的招聘广告暗示将来有可能会收购一些工作室。 在领英上&#xff0c;索尼互动娱乐发布了两个招聘职位&#xff0c;分别是企业开发高…

微软开放跨平台联机 索尼:我们早就这么做了

本周一的时候&#xff0c;微软公开邀请其他游戏平台联合起来让游戏可以在各平台间跨界联机&#xff0c;其他开发商可以选择加入这个项目&#xff0c;这项史无前例的举措如果成功实施&#xff0c;将解决Xbox Live和PSN之间长达十多年的隔阂。而索尼方面对此则是表示肯定和支持&a…

智慧视界,创新无限,汉朔联合微软索尼升级全新AI摄像头解决方案

上海 -- (美国商业资讯) -- 在第四届中国国际进口博览会期间&#xff0c;汉朔科技股份有限公司&#xff08;以下简称“汉朔”&#xff09;升级了商业AI摄像头零售解决方案&#xff0c;该方案针对微软&#xff08;中国&#xff09;有限公司&#xff08;以下简称“微软”&#xf…

Epic苹果诉讼案,却把索尼微软Steam都拉下水,网友忙吃瓜

梦晨 发自 凹非寺 量子位 报道 | 公众号 QbitAI 还记得Epic Games告苹果垄断案吗&#xff1f; 这个官司终于开庭了。 出人意料的是&#xff0c;双方出示的证据牵涉广泛&#xff0c;爆出不少过去从未公开的行业秘闻&#xff1a; 微软、索尼、Facebook、Netflix等都中枪了。 两家…

微软Xbox服务器太烂,国行Xbox One给跪了!微软Xbox Live竟压根没架设国服

国行Xbox One给跪了&#xff01;微软Xbox Live竟压根没架设国服 2014-10-28 16:05:27来源&#xff1a;游戏下载编辑&#xff1a;评论(0) 上月底&#xff0c;微软国行Xbox One次世代主机正式登陆中国大陆市场&#xff0c;不少国内玩家首次迎来一个新帐号——Xbox Live ID&#x…

索尼微软同步发布虚拟社区

索尼微软同步发布虚拟社区 http://www.sina.com.cn 2008年10月09日 20:07 新浪科技 .moduleSingleImg01 img{border:1px solid #D1E3F4}新浪科技讯 北京时间10月9日消息&#xff0c;据国外媒体报道&#xff0c;索尼和微软今天在东京游戏展上同时公布了针对各自视频游戏的虚…

北理工软件工程基础考试要点

文章目录 前言题型分析概念部分大题部分数据流图和数据字典数据流图数据字典 前言 这篇文章就是针对北理工计科同学写的&#xff0c;这是精心筛选&#xff0c;针对老师最后一节课的重点以及题型写的笔记&#xff0c;保你一天速通软件工程基础这门课。 题型分析 闭卷 单选题…