C#中数组和集合有什么区别?

如题所述

数组和List各有偏重,怎么可以厚此而薄彼。
数组是集合的一种。官方的说法是:
1.集合类定义为 System.Collections 或 System.Collections.Generic 命名空间的一部分。
2.大多数集合类都派生自 ICollection、IComparer、IEnumerable、IList、IDictionary 和 IDictionaryEnumerator 接口以及它们的等效泛型接口。

更一般的说法是:
“在 C# 中,集合类并非必须严格从 IEnumerable 和 IEnumerator 继承才能与 foreach 兼容;只要类有所需的 GetEnumerator、MoveNext、Reset 和 Current 成员,便可以与 foreach 一起使用。省略接口的好处为,使您可以将 Current 的返回类型定义得比 object 更明确,从而提供了类型安全。”
温馨提示:内容为网友见解,仅供参考
第1个回答  2009-06-16
自从学了LIST以后数组都不用了。。。。。话说什么是集合?数组和集合有什么区别。。。我也不知道。。。集合是LIST么- -?

老师问你你就说LIST不用去规定它的大小,数组需要在创建时就设定大小
数组一旦放满以后就不会再增大,但是LIST在满了以后会自动扩大

C#集合和数组的区别
集合:List <数据类型> 变量名;数组:数据类型 [ ] 变量名;2、赋值 集合:变量名 = new List <数据类型> ( ); 集合是不定长的,所以赋值时无须制定长度,赋值后长度可以变化。数组:变量名 = new 数据类型 [长度]; 由于数据的定长性,所以赋值时必须指定长度,赋值后长度固定不变。3、初始...

C#集合与数组的区别
5.数组可以有维数,集合没有。

数组与集合的区别?
一、主体不同 1、数组:是有序的元素序列。将有限个类型相同的变量的集合命名。2、集合:具有某种特定性质的具体的或抽象的对象汇总而成的集体。二、特点不同 1、数组:数组中的所有元素都具有相同类型。数组中的元素存储在一个连续性的内存块中,并通过索引来访问。2、集合:给定一个集合,任给一个...

集合 和 数组 的区别
数组与集合的区别:一:数组声明了它容纳的元素的类型,而集合不声明。这是由于集合以object形式来存储它们的元素。二:一个数组实例具有固定的大小,不能伸缩。集合则可根据需要动态改变大小。三:数组是一种可读\/可写数据结构没有办法创建一个只读数组。然而可以使用集合提供的ReadOnly方 只读方式来使...

什么是C#中的集合类
集合类是指实现集合功能的类。集合与数组很相似,都能存储多个数据,但集合的优点是:能够动态地扩大或收缩大小。在下面的情况下,使用集合比数组更容易:1.如果你要添加一个元素,必须新建一个数组,再将元素复制进来。2.如果你要删除指定索引的元素,也要新建一个数组,再把没有删除的元素复制进来。3...

C#中什么是集合
比如,ArrayList集合类对应的IEnumerator是 ArrayListEnumeratorSimple Array集合类对应的IEnumerator是 SZArrayEnumerator (这两个类在.net framework类库文档(msdn)中都没有介绍)1.System.Colloctions中表示集合的行为的接口有:1)ICollection 定义所有集合的大小、枚举数和同步方法。派生于IEnumerable 它定义了...

精:C# 泛型集合类List<T>使用总结
数组在定义时需要把长度(即元素总数)定义得非常大,造成了存储空间的巨大浪费。因此,List在实际项目开发中使用更为灵活。至于ArrayList,虽然可以存储不同类型的对象数据,但在C#中处理时需要判断,涉及到频繁的装箱拆箱,性能问题明显。而List泛型集合类中的T必须对存储元素对象进行约束,保持一致性。若...

C#高手来看看 怎么给这个 List<int> 赋值呢?
list.Add(234);list.Add(783);int[] array=list.ToArray(); \/\/将集合转换成数组;这就是给 这个反省集合 赋值;以上集合代码用数组表示如下:int[] array=new int[3]();array[0]=123;array[1]=234;array[2]=783;但是 数组和 集合的区别就在于 数组的长度固定,而集合的数据数目 可以...

c#中数组的下标是什么东西?
从上述描述中,我们知道数组就是“有限个类型相同的变量用一个名字命名,然后用编号区分他们的变量的集合,这个名字称为数组名,编号称为下标。”C# 支持一维数组、多维数组(矩形数组)和数组的数组(交错的数组)。下面的示例展示如何声明不同类型的数组:一维数组:int[] numbers;多维数组:string[,] ...

请问在c#中数据集是什么东东哦?
C#中有数据集吗? 没有吧? 。 只有dataset 之类的用来存储数据的你可以理解成数据集咯dataset就是一个虚拟的数据库咯,里面存着tables集合,table就保存着你的数据了,当然dataset使用是非常方便的,不需要连接数据库直接就可以new出来了! 还 有一个就是DataReader 也就是数据管理提供者类。你可以...

相似回答