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>();
相关推荐
遗憾皆是温柔2 分钟前
19. 重载的方法能否根据返回值类型进行区分
java·开发语言·面试·学习方法
Warren981 小时前
Java Record 类 — 简化不可变对象的写法
java·开发语言·jvm·分布式·算法·mybatis·dubbo
幼稚园的山代王1 小时前
Kotlin数据类型
android·开发语言·kotlin
青春不流名1 小时前
-bash: ll: 未找到命令
开发语言·bash
啃火龙果的兔子2 小时前
Form.Item中判断其他Form.Item的值
开发语言·前端·javascript
一枚小小程序员哈2 小时前
基于C#、.net、asp.net的心理健康咨询系统设计与实现/心理辅导系统设计与实现
c#·asp.net·.net
学习编程的gas2 小时前
C++多态:理解面向对象的“一个接口,多种实现”
开发语言·c++
EndingCoder3 小时前
Next.js 中间件:自定义请求处理
开发语言·前端·javascript·react.js·中间件·全栈·next.js
FirstFrost --sy3 小时前
C++ stack and queue
开发语言·c++·queue·stack·priority_queue
墨城之左3 小时前
低版本 IntelliJ IDEA 使用高版本 JDK 语言特性的问题
java·开发语言·intellij-idea·jdk21