.NET Framework数组、集合

F5跳转到下一个断点
F10逐过程调试 (逐语句执行时遇到调用或属性的情况,将不会进入调用的方法或者属性进行逐行执行,整个方法会一步执行,只给出结果,不会显示调用方法执行的具体细节)。
F11逐语句调试 进入方法调试(逐语句执行时遇到调用或属性的情况,将会进入调用的方法或者属性进行逐行执行)。
Shift+F11:当按F11进入一个方法执行时按Shift + F11可跳出该方法,返回原调用该方法的语句处执行下一条语句。

浏览器:F8跳到下一个断点

数组 :
1. 变量是 程序运行时在内存中存储可变数据的容器。
2. 变量可以存储单个数据,有没有一种容器,可以存储很多个变量并且 各个变量互不影响,和谐共处。
3. 特点:长度固定,类型相同。
数组的分类 : 一维数组,多维数组,不规则数组
数组的应用 : 创建,赋值, 引用 C#?交错数组 :交错数组是数组的数组
C#?传递数组给函数 :在 C# 中,您可以传递数组作为函数的参数。您可以通过指定不带索引的数组名称来给函数传递一个指向数组的指针。
C#?参数数组 :有时,当声明一个方法时,您不能确定要传递给函数作为参数的参数数目。C# 参数数组解决了这个问题,参数数组通常用于传递未知数量的参数给函数。
params 关键字 在使用数组作为形参时,C# 提供了 params 关键字,使调用数组为形参的方法时,既可以传递数组实参,也可以只传递一组数组
params 的使用格式为: public 返回类型 方法名称( params 类型[] 数组名称 )
C#?Array 类 :Array 类是 C# 中所有数组的基类,它是在 System 命名空间中定义。 Array 类提供了各种用于数组的属性和方法。

Array 类的属性:
1.IsFixedSize 获取一个值,该值指示数组是否带有固定大小。
2.IsReadOnly 获取一个值,该值指示数组是否只读。
3.Length 获取一个 32 位整数,该值表示所有维度的数组中的元素总数。
4.LongLength 获取一个 64 位整数,该值表示所有维度的数组中的元素总数。
5.Rank 获取数组的秩(维度)。

Array 类的方法:
1.Clear 根据元素的类型,设置数组中某个范围的元素为零、为 false 或者为 null。
2.Copy(Array, Array, Int32) 从数组的第一个元素开始复制某个范围的元素到另一个数组的第一个元素位置。长度由一个 32 位整数指定。
3.CopyTo(Array, Int32) 从当前的一维数组中复制所有的元素到一个指定的一维数组的指定索引位置。索引由一个 32 位整数指定。
4.GetLength? 获取一个 32 位整数,该值表示指定维度的数组中的元素总数。
5.GetLongLength 获取一个 64 位整数,该值表示指定维度的数组中的元素总数。
6.GetLowerBound 获取数组中指定维度的下界。
7.GetType 获取当前实例的类型。从对象(Object)继承。
8.GetUpperBound 获取数组中指定维度的上界。
9.GetValue(Int32) 获取一维数组中指定位置的值。索引由一个 32 位整数指定。
10.IndexOf(Array, Object) 搜索指定的对象,返回整个一维数组中第一次出现的索引。
11.Reverse(Array) 逆转整个一维数组中元素的顺序。
12.SetValue(Object, Int32) 给一维数组中指定位置的元素设置值。索引由一个 32 位整数指定。
13.Sort(Array) 使用数组的每个元素的 IComparable 实现来排序整个一维数组中的元素。
14.ToString 返回一个表示当前对象的字符串。从对象(Object)继承。

集合:
1、BCL(Base Class Library)中集合类型分为泛型集合与非泛型集合。
2、非泛型集合的类和接口位于System.Collections命名空间。
3、泛型集合的类和接口位于System.Collections.Generic命名空间。
System.Collection 命名空间的类 :
动态数组(ArrayList):它代表了可被单独索引的对象的有序集合。 它基本上可以替代一个数组。但是,与数组不同的是,您可以使用索引在指定的位置添加和移除项目,动态数组会自动重新调整它的大小。它也允许在列表中进行动态内存分配、增加、搜索、排序各项。
哈希表(Hashtable)它使用键来访问集合中的元素。 当您使用键访问元素时,则使用哈希表,而且您可以识别一个有用的键值。哈希表中的每一项都有一个键/值对。键用于访问集合中的项目。
排序列表(SortedList):用于处理和表现类似key value的键值对,它可以使用键和索引来访问列表中的项。排序列表是数组和哈希表的组合。它包含一个可使用键或索引访问各项的列表。如果您使用索引访问各项,则它是一个动态数组(ArrayList),如果您使用键访问各项,则它是一个哈希表(Hashtable)。集合中的各项总是按键值排序。
堆(heap):堆是一种经过排序的树形数据结构,每个结点都有一个值。
栈(stack):它是一种具有后进先出性质的数据结构,也就是说后存放的先取,先存放的后取。
堆栈(Stack)&栈:它代表了一个后进先出的对象集合。 当您需要对各项进行后进先出的访问时,则使用堆栈。当您在列表中添加一项,称为推入元素,当您从列表中移除一项时,称为弹出元素。
队列(Queue)&堆:它代表了一个先进先出的对象集合。 当您需要对各项进行先进先出的访问时,则使用队列。当您在列表中添加一项,称为入队,当您从列表中移除一项时,称为出队。
点阵列(BitArray):BitArray用来处理位集合,类管理一个紧凑型的位值数组,它使用布尔值来表示 true开启 false关闭

原文地址:https://www.cnblogs.com/h0906/p/11147293.html