一、概念类
①、什么是数组,什么是集合,为什么要有集合?
数组 int[ ] :最适用于创建和使用固定数量的强类型化对象,创建数组时要明确所创建数组的类型(int[],string[],bool[]...)及数组数量。
集合 ArrayList():把各种类型的数据集合在一起,通过下标来遍历显示。集合是一个类,因此必须在向该集合添加元素之前,声明类的实例,需using System.Collections。
集合的由来:数组中无法随意的放随意类型、随意数量的数据,并且数组创建后无法再向数组里插入数据,数组的使用受局限,为解决以上问题,集合便由此产生。
集合小拓展(方法):
增:Add 移除单独一个数据:Remove 移除指定索引处的值:Removeat 移除批量数据:RemoveRange 插入数据:Insert 插入数组:InsertRange 清空:Clear 排序:Sort 反转:Reverse 找某个元素对应索引:IndexOf 判断是否包含某个元素:Contains 比较:Equals 个数:Count
②、什么是哈希表,什么是哈希函数,为什么要有哈希表?
哈希表(HashTable):根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中的一个位置来访问记录,以加快访问记录,一加快查找速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。
给定表M,存在函数f(key),对任意给定的关键字值key,带入函数后若能得到包含该关键字的记录在 表中的地址,则称表M为哈希(Hash)表,函数f(key)为哈希(Hash)函数。
哈希表的由来:快速访问数据。
哈希表小拓展:
- 哈希表以键值对的形式存值 ,key----键(不能相同),value-----值;
- 哈希表使用键作为寻找的方式,是一种无序的结构,无序显示;
- 哈希表里的数据如何遍历?不再是for循环了,用foreach循环。但凡是实现了IEnumerable接口的都可以被foreach遍历 ;
- 哈希表的方法:判断是否包含这个键Contains,判断是否包含这个值ContainValue,移除remove(移除的是键,值便跟着没了)。
③、C#中静态方法与非静态方法的区别?
C#静态方法是一种特殊的成员方法,它不属于类的某一具体实例,而是属于类本身。所以对于静态方法不需要首先创建一个类的实例,而是采用 类名.静态方法 的格式
(1)static方法是类中的一个成员方法,属于整个类,即不用创建任何对象也可以直接调用。static方法内部只能出现static变量和其他static方法,而且static方法还不能使用this等关键字(this指的是当前的对象),因为它是属于整个类。
(