C#中 [], List, Array, ArrayList 區別

[] 是針對特定類型、固定長度的。
List 是針對特定類型、任意長度的。
Array 是針對任意類型、固定長度的。
ArrayList 是針對任意類型、任意長度的。
Array 和 ArrayList 是通過存儲 object 實現任意類型的,所以使用時要轉換。

Array 是抽象類別,不能使用 new Array 創建。

ArrayList的命名空間是System.Collections 預設不會載入,必須自行引用。

Array arrayTest = Array.CreateInstance(typeof(object), 3);
arrayTest.SetValue("abc", 0);
arrayTest.SetValue(4, 1);
arrayTest.SetValue(new DateTime(2019, 6, 18), 2);
foreach (var objItem in arrayTest)
{
    Console.WriteLine(objItem);
}
// Console.WriteLine(arrayTest[0]); // not work
Console.WriteLine(arrayTest.GetValue(0));

ArrayList arrayListTest = new ArrayList();
arrayListTest.Add("abc");
arrayListTest.Add(4);
arrayListTest.Add(new DateTime(2019, 6, 18));
foreach (var objItem in arrayTest)
{
    Console.WriteLine(objItem);
}
Console.WriteLine(arrayListTest[0]);

原文地址:https://www.cnblogs.com/sipher/p/11046705.html

时间: 2024-10-07 23:11:37

C#中 [], List, Array, ArrayList 區別的相关文章

【转载】C#中[],List,Array,ArrayList的区别及应用

本篇文章主要是对C#中[],List,Array,ArrayList的区别及应用进行了详细的介绍,需要的朋友可以过来参考下,希望对大家有所帮助 [] 是针对特定类型.固定长度的. List 是针对特定类型.任意长度的. Array 是针对任意类型.固定长度的. ArrayList 是针对任意类型.任意长度的. Array 和 ArrayList 是通过存储 object 实现任意类型的,所以使用时要转换.

解析C#中[],List,Array,ArrayList的区别及应用

[] 是针对特定类型.固定长度的. List 是针对特定类型.任意长度的. Array 是针对特定类型.固定长度的. ArrayList 是针对任意类型.任意长度的. Array 和 ArrayList 是通过存储 object 实现任意类型的,所以使用时要转换. 应用示例 复制代码代码如下: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.

JavaScript 的setTimeout 和Angular中的$timeout的區別

JavaScript中setTimeout返回值类型和意义说明: 1.setTimeout :暂停指定的毫秒数后执行指定的代码,返回值是id标识,这个id的意义就是通过clearTimeout来清理暂停执行函数. setTimeout函数的ID标识(number类型),每次调用setTimeout函数都会产生一个唯一的ID,可以通过clearTimeout函数(此函数的参数接收一个setTimeout返回的ID)暂停setTimeout函数还未执行的代码 <html> <head>

C#中数组Array、ArrayList、泛型List&lt;T&gt;的比较

在C#中数组Array,ArrayList,泛型List都能够存储一组对象,但是在开发中根本不知道用哪个性能最高,下面我们慢慢分析分析. 一.数组Array 数组是一个存储相同类型元素的固定大小的顺序集合.数组是用来存储数据的集合,通常认为数组是一个同一类型变量的集合. Array 类是 C# 中所有数组的基类,它是在 System 命名空间中定义. 数组在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也非常简单. Array数组具体用法: using System; names

C# 中的集合(Array/ArrayList/List&lt;T&gt;/HashTable/Dictionary)

C# 中的集合(Array/ArrayList/List<T>/HashTable/Dictionary) int [] numbers = new int[5]; // 长度为5,元素类型为 int.string[,] names = new string[5,4]; // 5*4 的二维数组byte[][] scores = new byte[5][]; // 长度为 5 的数组,元素为 byte的数组,元素数组的长度未知. 不同的格式:int[] numbers = new int[5]

單反數碼相機和普通數碼相機的區別 !

數碼單鏡頭反光DSLR(Digital Single Lens Reflex)照相機,簡稱數碼單反相機.在這種系統中,反光鏡和棱鏡的獨到設計使得攝影者可以從取景器中直接觀察到通過鏡頭的影像.單鏡頭反光照相機的構造圖中可以看到,光線透過鏡頭到達反光鏡後,折射到上面的對焦屏並結成影像,透過接目鏡和五棱鏡,我們可以在觀景窗中看到外面的景物 光通過透鏡 (1),被反光鏡(2)反射到磨砂取景屏(5)中.通過一塊凸透鏡(6) 並在五棱鏡(7)中反射,最終圖像出現在取景框(8)中.當按下快門,反光鏡沿箭頭所示

将java中数组转换为ArrayList的方法实例(包括ArrayList转数组)

方法一:使用Arrays.asList()方法 1 2 String[] asset = {"equity", "stocks", "gold", "foreign exchange","fixed income", "futures", "options"}; List<String> assetList = Arrays.asList(asset);

android中保存一个ArrayList到SharedPreferences的方法

保存: public static boolean saveArray() { SharedPrefernces sp=SharedPrefernces.getDefaultSharedPrefernces(this); SharedPrefernces.Editor mEdit1= sp.edit(); mEdit1.putInt("Status_size",sKey.size()); /*sKey is an array*/ for(int i=0;i<sKey.size()

Java中List,ArrayList、Vector,map,HashTable,HashMap区别用法

Java中List,ArrayList.Vector,map,HashTable,HashMap区别用法 标签: vectorhashmaplistjavaiteratorinteger ArrayList 和Vector是采用数组方式存储数据,此数组元素数大于实际存储的数据以便增加和插入元素,都允许直接序号索引元素,但是插入数据要设计到数组元素移动 等内存操作,所以索引数据快插入数据慢,Vector由于使用了synchronized方法(线程安全)所以性能上比ArrayList要差,Linke