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>();
相关推荐
天若有情6735 小时前
程序员原创|借鉴JS事件冒泡,根治电脑文件混乱的“冒泡整理法”
开发语言·javascript·windows·ecmascript·电脑·办公·日常
特种加菲猫5 小时前
继承,一场跨越时空的对话
开发语言·c++
工程师0076 小时前
C# 继承、多态、虚方法表(VTable)原理
c#·多态·继承·虚方法表
玩转单片机与嵌入式6 小时前
玩转边缘AI(TInyML):需要掌握的C++知识汇总!
开发语言·c++·人工智能
茉莉玫瑰花茶7 小时前
Qt 信号与槽 [ 1 ]
开发语言·数据库·qt
AI人工智能+电脑小能手7 小时前
【大白话说Java面试题】【Java基础篇】第30题:JDK动态代理和CGLIB动态代理有什么区别
java·开发语言·后端·面试·代理模式
张健11564096488 小时前
临界区和同一线程上锁
java·开发语言·jvm
头发够用的程序员8 小时前
C++和Python面试经典算法汇总(一)
开发语言·c++·python·算法·容器·面试
夜猫逐梦9 小时前
【逆向经验】一篇文章讲透为什么CE搜不到Python游戏的内存值
开发语言·python·游戏