C#动态设置数组长度

转自:http://www.cnblogs.com/ysz12300/p/5595907.html

命名空间:using System.Collections; 

 ArrayList就是传说中的动态数组,它可以动态的增加和减少元素,另外它可以存储任意个数和任意类型的元素。  

属性  Count属性是目前ArrayList包含的元素的数量,这个属性是只读的 Capacity属性是目前ArrayList能够包含的最大数量,可以手动的设置这个属性,但是当设置为小于Count值的时候会引发一个异常。

 方法  Add(v):添加一个元素(参数v,任何类型)到当前列表的末尾 

AddRange方法用于添加一批元素到当前列表的末尾

 Remove方法用于删除一个元素,通过元素本身的引用来删除

 RemoveAt(i):方法用于删除一个元素,通过索引值(参数i)来删除 

RemoveRange用于删除一批元素,通过指定开始的索引和删除的数量来删除 

Insert用于添加一个元素到指定位置,列表后面的元素依次往后移动

 InsertRange用于从指定位置开始添加一批元素,列表后面的元素依次往后移动

 Clear():方法用于清除现有所有的元素

 Contains(v):方法用来查找某个对象(参数v)在不在列表之中 

ToArray(Type t):这个方法把ArrayList的元素Copy到一个新的数组中,参数为Type类型

 ① 简单使用 

 ArrayList list = new ArrayList();  // 声明变量

  list.Add(2);

 list.Add("北京"); 

list.Add(new int[] { 2, 4, 6 }); 

list.Add("南京");

 list.Add(3);  

foreach (var p in list)

 {     Console.Write(p.ToString() + " | ");  // 输出:2 | 北京 | System.Int32[] | 南京 | 3 | } 

② ArrayList与数组转换  

元素类型相同的转换  

ArrayList list = new ArrayList();

 list.Add(1); 

list.Add(2);

 list.Add(3);  

// 转换方式1:ToArray() 

int[] list2 = (int[])list.ToArray(typeof(int));  

// 转换方式2:CopyTo()

 int[] list3 = new int[list.Count]; list.CopyTo(list3); 

元素类型不同的转换 

 ArrayList arr = new ArrayList(){ "北京", 1};   //往数组中添加不同类型的元素  

object[] arr2 = (object[])arr.ToArray(typeof(object)); //正确 

string[] arr3 = (string[])arr.ToArray(typeof(string)); //错误

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值