集合类
来源:互联网 发布:淘宝拍图摄影工作室 编辑:程序博客网 时间:2024/04/28 23:10
欢迎来到unity学习、unity培训、unity企业培训教育专区,这里有很多U3D资源、U3D培训视频、U3D教程、U3D常见问题、U3D项目源码,我们致力于打造业内unity3d培训、学习第一品牌。
集合类
我们用的比较多的非泛型集合类主要有 ArrayList类 和 HashTable类。我们经常用HashTable 来存储将要写入到数据库或者返回的信息,在这之间要不断的进行类型的转化,增加了系统装箱和拆箱的负担,如果我们操纵的数据类型相对确定的化 用Dictionary<TKey,TValue> 集合类来存储数据就方便多了,例如我们需要在电子商务网站中存储用户的购物车信息(商品名,对应的商品个数)时,完全可以用 Dictionary<string, int> 来存储购物车信息,而不需要任何的类型转化。
1.数组是固定大小的,不能伸缩。虽然System.Array.Resize这个泛型方法可以重置数组大小,
但是该方法是重新创建新设置大小的数组,用的是旧数组的元素初始化。随后以前的数组就废弃!而集合却是可变长的
2.数组要声明元素的类型,集合类的元素类型却是object.
3.数组可读可写不能声明只读数组。集合类可以提供ReadOnly方法以只读方式使用集合。
4.数组要有整数下标才能访问特定的元素,然而很多时候这样的下标并不是很有用。集合也是数据列表却不使用下标访问。
很多时候集合有定制的下标类型,对于队列和栈根本就不支持下标访问!
ArrayList类
方法
1:Add()向数组中添加一个元素,
2:Remove()删除数组中的一个元素
3:RemoveAt(int i)删除数组中索引值为i的元素
4:Reverse()反转数组的元素
5:Sort()以从小到大的顺序排列数组的元素
6:Clone()复制一个数组
List类
可通过索引访问的对象的强类型列表。提供用于对列表进行搜索、排序和操作的方法,在决定使用 List 还是使用 ArrayList 类(两者具有类似的功能)时,记住 List 类在大多数情况下执行得更好并且是类型安全的。如果对 List 类的类型 T 使用引用类型,则两个类的行为是完全相同的。但是,如果对类型 T 使用值类型,则需要考虑实现和装箱问题。
很多非泛型集合类都有对应的泛型集合类,下面是常用的非泛型集合类以及对应的泛型集合类:
非泛型集合类
泛型集合类
ArrayList
List<T>
HashTable
DIctionary<T>
Queue
Queue<T>
Stack
Stack<T>
SortedList
SortedList<T>
列表、队列、栈和哈希表是应用程序中管理数据的常见方式
类 特点 示例、用途
ArrayList 有序的对象列表 邮箱:可以在任何位置插入和删除元素
Queue 先进先出的对象集合 排队买票,处理器队列
Stack 先进后出的对象集合 一摞盘子,后缀表达式
Hashtable一对(key,object) 通过 key 可以访问到指定的元素
元素的集合, 通过书籍的 ISBN码找到书
Hashtable类
一、哈希表(Hashtable)简述
在.NET Framework中,Hashtable是System.Collections命名空间提供的一个容器,用于处理和表现类似key/value的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中key/value键值对均为object类型,所以Hashtable可以支持任何类型的key/value键值对.
二、哈希表的简单操作
在哈希表中添加一个key/value键值对:HashtableObject.Add(key,value);
在哈希表中去除某个key/value键值对:HashtableObject.Remove(key);
从哈希表中移除所有元素: HashtableObject.Clear();
判断哈希表是否包含特定键key: HashtableObject.Contains(key);
更多精彩请点击 http://www.gopedu.com/
- Map集合(集合类)
- 集合类 Map集合
- 集合类 List集合 / LinkedList集合
- 集合类
- 集合类
- 集合类
- 集合类
- 集合类
- 集合类
- 集合类...
- 集合类
- 集合类
- 集合类:
- 集合类
- 集合类
- 集合类
- 集合类
- 集合类
- Android 系统广播大全
- Xcode和mac快捷键
- Setting DYNAMIXEL IDs with the DynaManager
- vc++学习开始时间
- mako源码解读(1)——python代码格式化
- 集合类
- 简单的将数字以十六进制的格式输出
- nyoj 122 triangular sums
- 从一道面试题说去
- 微博开发1客户端的http的get和post封装
- 集合类
- Windows英文版GitHub客户端使用操作流程图文攻略教程现没中文版
- bzoj 1015 JSOI2008 星球大战starwar 并查集
- [Python]学习笔记之列表