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>();
相关推荐
阿正的梦工坊3 小时前
JavaScript 微任务与宏任务完全指南
开发语言·javascript·ecmascript
知行合一。。。4 小时前
Python--05--面向对象(属性,方法)
android·开发语言·python
青梅橘子皮4 小时前
C语言---指针的应用以及一些面试题
c语言·开发语言·算法
浅时光_c4 小时前
3 shell脚本编程
linux·开发语言·bash
Evand J4 小时前
【三维轨迹目标定位,CKF+RTS,MATLAB程序】基于CKF与RTS平滑的三维非线性目标跟踪(距离+方位角+俯仰角)
开发语言·matlab·目标跟踪
今天又在写代码5 小时前
java-v2
java·开发语言
competes6 小时前
慈善基金投资底层逻辑应用 顶层代码低代码配置平台开发结构方式数据存储模块
java·开发语言·数据库·windows·sql
Ulyanov6 小时前
用Pyglet打造AI数字猎人:从零开始的Python游戏开发与强化学习实践
开发语言·人工智能·python
独自归家的兔7 小时前
OCPP 1.6 协议详解:StatusNotification 状态通知指令
开发语言·数据库·spring boot·物联网
希望永不加班7 小时前
Spring AOP 代理模式:CGLIB 与 JDK 动态代理区别
java·开发语言·后端·spring·代理模式