Unity常用数据结构

Array 数组

1.存储在连续内存上
2.元素都是同类或衍生类
3.可以通过索引下标访问
4.不能改变数组长度,只能覆盖

ArrayList 数组列表

1.无需指定长度
2.元素非泛型,均为object,需要装箱拆箱操作
3.可以通过下标来访问

List 列表

1.无需要指定长度
2.元素是泛型,无需拆箱装箱
3.可能过下标来访问

LinkedList 链表

1.循序取决于头文件指向
2.是一个双向链表
3.可以插入到最前,最后,某个元素之前或之后
4.可以更好的管理元素之间的前后关系
5.元素是泛型,无需拆箱装箱

Queue 队列

1.只能在前端删除,在后端插入
2.是一个先进先出线性表
3.元素是泛型,无需拆箱装箱
4.可以有重复值

Stack 堆栈

1.只允许在表的一端进行增删
2.是一个后进行出的线性表
3.元素是泛型,无需拆箱装箱

Hash Table哈希表

1.是一个松散结构
2.只记录压缩后的索引
3.由于索引被压缩可能会出现哈希冲突
4.非泛型表,需要拆箱装箱
5.可变长度

Dictionary 字典

1.必须先指定索引和类型
2.元素是泛型,无需拆箱装箱
3.可变长度
4.键值存在栈中,索引内容在堆中

你可能感兴趣的:(Unity常用数据结构)