c#---集合

集合(Collection)类是专门用于数据存储和检索的类。这些类提供了对栈(stack)、队列(queue)、列表(list)和哈希表(hash table)的支持。大多数集合类实现了相同的接口。

  1. 动态数组ArrayList
添加 Add()、Insert()
删除 RemoveAt(索引)、Remove(对象)、Clear()
查找 使用for循环、也可以使用foreach循环、Contains判断某个元素是否存在
常用属性 获取元素个数:Count(对比数组 :Length)
  1. 泛型集合list<T>对象
csharp 复制代码
List<int> m_List = new List<int>();

和ArrayList的区别在于在声明泛型集合(List)的时候需要制定里面成员的类型,而ArrayList不需要,可以添加任何类型,这会有啥好处?

① 数据安全了,你添加string等非int类型的成员添加不进去(编译都过不去),这样数据就安全唯一了

② 节省性能,不需要每一操作成员的时候都要拆箱和装箱了。

  1. 哈希表(Hashtable)
添加 Add( object key, object value )
删除 Remove( object key )、Clear()
查找 for循环、ContainsKey( object key )、ContainsValue( object value )
常用属性 获取元素个数:Count、Keys:获取键、Values获取值
  1. 泛型集合 Dictionary<TKey, TValue>
csharp 复制代码
Hashtable ht = new Hashtable();
Dictionary<string, int> dic = new Dictionary<string, int>();
相关推荐
霸道流氓气质4 分钟前
分布式系统中接口时序不确定性处理
java·开发语言·分布式
库克克22 分钟前
【C++】C++11 包装器function 与 绑定器 bind
开发语言·c++
多加点辣也没关系30 分钟前
JavaScript|第30章:事件机制
开发语言·javascript
小大宇31 分钟前
python milvus 案例
开发语言·python·milvus
Gauss松鼠会42 分钟前
【GaussDB】GaussDB锁阻塞源头查询
java·开发语言·前端·数据库·算法·gaussdb·经验总结
mingo_敏1 小时前
DeepAgents : 后端(Backends)
java·开发语言
mabing9931 小时前
Qt QMessageBox、QDialogButtonBox中英文翻译动态切换
开发语言·qt
Sagittarius_A*1 小时前
【RCELABS】Level 17~18 —— PHP命令执行函数与环境变量注入
开发语言·安全·web安全·靶场·php·rce
冻柠檬飞冰走茶1 小时前
PTA基础编程题目集 7-19 支票面额(C语言实现)
c语言·开发语言·数据结构·算法
破碎的南瓜2 小时前
靶场中使用到的php函数以及每种漏洞的防御方式
开发语言·php