c#中的array ,arraylist 和 list<T>的区别及主要作用范围

如题所述

3个都是数组,主要是用来存放数据用的。
区别在于:前2个是弱类型,没有类型限制。
LIST<T>是泛型也称之为强类型。其作用就是限制类型。
list<类型>,如果你定义了一个USER1类和一个USER2类,然后list<USER1>,然后你list<USER1> lu=new list<USER1>();
这里你NEW出了一个对象,然后lu.add(数据);//注意这里的数据必须是USER类型的,换句话说就必须是USER类的属性。
如果你添加了USER2类的属性或者其它类的属性都会报错,必须是USER类的属性才可以。
这个就是强类型的作用。
温馨提示:内容为网友见解,仅供参考
第1个回答  2012-04-22
都是collections类里面的,arraylist不限定大小,超过大小就扩大一倍长度。
第2个回答  2012-04-20
array就是数组,
arraylist 和list<T>你可以理解为链表(虽然实际也是array实现的),区别:list<T>支持泛型

C#中数组,ArrayList和List三者的区别
数组的容量是固定的,您只能一次获取或设置一个元素的值,而ArrayList或List<T>的容量可根据需要自动扩充、修改、删除或插入数据。数组可以具有多个维度,而 ArrayList或 List< T> 始终只具有一个维度。但是,您可以轻松创建数组列表或列表的列表。特定类型(Object 除外)的数组 的性能优于 ArrayList的性...

C#中Collection,List和ArrayList的区别
ArrayList ArrayList是命名空间System.Collections下的一部分,在使用该类时必须进行引用,同时继承了IList接口,提供了数据存储和检索。ArrayList对象的大小是按照其中存储的数据来动态扩充与收缩的。所以,在声明ArrayList对象时并不需要指定它的长度。在ArrayList中插入不同类型的数据是允许的。因为ArrayList会把...

C#中数组,ArrayList和List三者的区别
首先最最重要的区别是:数组和ArrayList接受的类型是object,也就是说啥都可以装进去!这里面就有一个类型转换的问题(专业术语也叫做装箱和拆箱);而List是泛型的,什么是泛型呢?就是你在定义的时候 一定要指明这个List安装的是什么类型的。比如,你这样定义List List l = new List();编译器会提示...

C#中数组,ArrayList和List三者的区别Unity3d
1、ArrayList类是一个特殊的数组。它来自于System.Collections命名空间;通过添加和删除元素,就可以动态改变数组的长度。2、添加代码,生成新的list列表。3、添加【添加元素】按钮代码,获取用户输入的元素个数;,添加新元素;,输出操作信息。4、添加【查看列表】按钮代码,遍历列表;输出列表内容;如果列表...

C#中数组,ArrayList和List三者的区别
ArrayList是.Net Framework提供的用于数据存储和检索的专用类,它是命名空间System.Collections下的一部分。它的大小是按照其中存储的数据来动态扩充与收缩的。所以,我们在声明ArrayList对象时并不需要指定它的长度。ArrayList继承了IList接口,所以它可以很方便的进行数据的添加,插入和移除.在list中,我们不仅...

C#中Collection,List和ArrayList的区别
另一方面,Collection<T>和List<T>也实现了IList, ICollectionIEnumerable,说明这两个类比ArrayList提供了更多的方法。3. 范型与非范型的区别 ArrayList是非范型类,如此,这个集合可以包含不同类型成员,我们可以看到,Add方法是Add(Object obj),所以这是一个对象杂陈的类。使用这个类进行操作时,IndexOf...

精:C# 泛型集合类List<T>使用总结
ArrayList中存放的元素类型不一致,在C#中处理时需要频繁判断,导致性能问题。而List只能添加一种数据类型,可以是基本的值类型也可以是引用类型,一旦数据类型确定,不可更改。在进行数据处理时,可以采用强大的Linq,处理起来非常方便。对于List的去重、交集、并集、差集操作,当T为引用类型时,可以使用...

数组,List和ArrayList的区别
正是因为ArrayList存在不安全类型与装箱拆箱的缺点,所以在C#2.0后出现了泛型的概念。而List类是ArrayList类的泛型等效类。它的大部分用法都与ArrayList相似,因为List类也继承了IList接口。最关键的区别在于,在声明List集合时,我们同时需要为其声明List集合内数据的对象类型。 比如:List<int> list = ...

说说C#中IList与List区别
区别:首先IList泛型接口是ICollection泛型接口的子代,并且是所有泛型列表的基接口。它仅仅是所有泛型类型的接口,并没有太多方法可以方便实用,如果仅仅是作为集合数据的承载体,确实,IList<T>可以胜任。不过,更多的时候,要对集合数据进行处理,从中筛选数据或者排序。这个时候IList<T>就爱莫能助了。...

array和的区别
一、Array和ArrayList的区别 1. Array类型的变量在声明的同时必须进行实例化(至少得初始化数组的大小),而ArrayList可以只是先声明。如:int[] array = new array[3];或 int[] array = {1,2,3};或 ArrayList myList = new ArrayList();这些都是合法的,而直接使用 int[] array;是不行的。2...

相似回答