数组,哈希表,字典

数组
数组的分类 : 一维数组,多维数组,不规则数组
数组的应用 : 创建,赋值, 引用
一维数组、二维数组、多维数组的应用就是,存储类型相同的数据
数组的特点就是,类型相同,长度固定
一维数组的格式
创建格式 int[] arr = new int [100];
数组类型 数组名称 创建一个新对象 数组的长度
也可以是
int[] intarray = { 1, 2, 3, 4, 5, 6 };这种格式说明
二维数组的格式
创建格式string [,] names = new string [2,3]
数组类型 维度 数组名称 创建一个新对象 数组的长度
也可以是
int[,] arr = { { 123, 11, 22 }, { 44, 33, 55 } };这种格式声明
多维数组和二维数组的格式相同,N维数组 就在[]中打 N-1个逗号
-------------------------------
不规则数组
创建格式 int[][] arrs1 = {
new int[] { 1,2},
new int[] { 1,2,3,4,5},
new int[] { 1,2,3,4,5,6,7,8,9}
};
不规则数组的特点就是,类型相同,但是和一维数组不同的是,解决了多维数组中,数组的长度问题
动态数组
创建格式ArrayList list = new ArrayList();
关键字 数组名称
动态数组的特点是,可以解决数组不能存放类型不同的特点,一级数组长度固定的问题
动态数组不方便的一点就是,它存储的数据都会变成object类型的,也就是说,它在存放数据的时候会进行一个装箱的操作,在使用数据 的时候需要我们手动的进行一下拆箱操作。
List<T>泛型集合
泛型集合的出现就是为了解决动态数据需要装箱拆箱的不便
Array方法
Array.Clear (arrc01, 2, 2);
清空元素的方法 数组名 开始清空的位置 清空的个数
Array.Copy (arrc01, arrc02, 3);
复制元素 第一个数组名 第二个数组名 复制的个数
arrc02. GetType()
变量,或数组 获取类型
arrc02. GetValue(2)
数组名 获取指定下标的元素
Array.IndexOf(arrc02,10)
获取元素的下标
Array.Reverse(arrc02);
逆转数组 数组名
arrc02.SetValue ( 15, 2);
数组名 给数组指定位置赋值 数组位置 数组
Array.Sort( arrc02);
给数组排序 数组名
HashTable哈希表
创建方式Hashtable htb = new Hashtable();
关键字 名称
htb.Add("张三", new StudentModel() { ID = 1, Name = "张三" });
赋值方法 Key 数据
Dictionary<K,V>字典
Dictionary<K,V>是泛型的,当K或V是值类型时,其速度远远超过Hashtable。
Dictionary<K,V>是类型安全的,这有助于我们写出更健壮更具可读性的代码,而且省却我们强制转化的麻烦。这个相信大家都明白。
Dictionary<K,V>是泛行的,当K或V是值类型时,其速度远远超过Hashtable。这个大家对值类型与引用类型有所了解的话也会明白。


 

posted on 2019-07-07 20:09  程铭  阅读(443)  评论(0编辑  收藏  举报