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>();
相关推荐
雨田言炎20 小时前
四、关于Qt项目需要知道的
开发语言·笔记·qt
猿长大人21 小时前
C# | JSON 序列化中的多态接口处理:基于 Attribute 实现精准 $type 控制
c#·json
程序喵大人21 小时前
【C++进阶】STL算法与函数对象 - 02 sort为什么需要随机访问迭代器
开发语言·c++·算法
SomeB1oody21 小时前
【RustyML入门】2.6. 线性判别分析
开发语言·后端·机器学习·rust·教程
用户昵称1001 天前
C/C++编程-工程实践-本地存储log的工程意义
c语言·开发语言
吹什么轩1 天前
c++复习:map和set的使用
开发语言·c++
必须得开心呀1 天前
qt生成dump文件并定位异常
开发语言·qt
fpcc1 天前
跟我学C++中级篇—内存流
开发语言·c++
Cicada1281 天前
ccvt:一个用 Rust 写的中国地图坐标系互转命令行工具
开发语言·后端·rust