C#之基础3---③(集合,数组与集合的区别,哈希表,哈希函数,C#中的静态方法与非静态方法)

一、概念类

①、什么是数组,什么是集合,为什么要有集合?

数组  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)函数。

哈希表的由来:快速访问数据。

哈希表小拓展:

  1. 哈希表以键值对的形式存值 ,key----键(不能相同),value-----值;
  2. 哈希表使用键作为寻找的方式,是一种无序的结构,无序显示;
  3. 哈希表里的数据如何遍历?不再是for循环了,用foreach循环。但凡是实现了IEnumerable接口的都可以被foreach遍历    ;
  4. 哈希表的方法:判断是否包含这个键Contains,判断是否包含这个值ContainValue,移除remove(移除的是键,值便跟着没了)。

③、C#中静态方法与非静态方法的区别?

C#静态方法是一种特殊的成员方法,它不属于类的某一具体实例,而是属于类本身。所以对于静态方法不需要首先创建一个类的实例,而是采用   类名.静态方法  的格式

(1)static方法是类中的一个成员方法,属于整个类,即不用创建任何对象也可以直接调用。static方法内部只能出现static变量和其他static方法,而且static方法还不能使用this等关键字(this指的是当前的对象),因为它是属于整个类。

评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Elsa~

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值