Welcome

首页 / 软件开发 / C# / C#中的Array和ArrayList

C#中的Array和ArrayList2009-07-07 本站 L小凤一、Array的一些方法

int[] nums = { 5, 4, 6, 3, 14, 9, 8, 17, 1, 24, -1, 0 };

Console.Write("排序之前order: ");

foreach (int i in nums)

Console.Write(i + " ");Console.WriteLine();

int before = Array.IndexOf(nums, 14);

Console.WriteLine("before sort 14 index is " + before);

//排序之前在数组中的序号

Array.Sort(nums);//静态方法对数组进行排序

Console.Write("排序之后order:   ");

foreach (int i in nums)Console.Write(i + " ");

//输出数组int index = Array.BinarySearch(nums, 14);

//查找的序号Console.WriteLine("the index of is is" + index);

Console.WriteLine();string[] strArray = new string[] 

{ "75.3", "25.999", "105.25" };

//类型转换double[] doubleArray = Array.ConvertAll

<string, double>(strArray, Convert.ToDouble);

//实现类型的转换

Console.Write("Converted to doubles: ");

Array.ForEach<double>(doubleArray, delegate(double x)

{ Console.Write(x + " "); });//委托事件

程序结果截图

 

二、ArrayList

Array是个静态的数组,一旦数组大小在初始化过程中确定了在后面就不能修改了,也不能对数组中的元素进行增加和删除.这不是很灵活,为此C#提供了ArrayList用来处理动态的数组.,

ArrayList在创建以后可以根据实际需要进行元素的增删.这个是非常好用了..我们先看下ArrayList的构造函数

ArrayList al = new ArrayList(); 

再来看一个简单的例子:

ArrayList al = new ArrayList(); 

Console.WriteLine

("Initial number of elements: " + al.Count); 

Console.WriteLine("Adding 6 elements"); 

// Add elements to the array list 

al.Add("C"); 

al.Add("A"); 

al.Add("E"); 

al.Add("B"); 

al.Add("D"); 

al.Add("F");

al.Remove("A");//删除一个元素

Console.WriteLine(al.Count);

al.Add("a");//增加一个元素

Console.WriteLine(al.Count);

al[0] = "X";//修改数组元素

al[1] = "Y";

al[2] = "Z";

//删除一个元素后数量变为5,增加一个后元素的数量为6

 

那么现在我们再来建立一个数字的ArrayList来学习下它的方法;

ArrayList al = new ArrayList(); 

// Add elements to the array list 

al.Add(155);  al.Add(413); 

al.Add(-41);  al.Add(818); 

al.Add(31); al.Add(191); 

Console.Write("Original contents: "); 

foreach(int i in al) 

Console.Write(i + " "); 

Console.WriteLine(" "); 

// Sort 排序

al.Sort(); 

Console.Write("Contents after sorting: "); 

foreach(int i in al) 

Console.Write(i + " "); 

Console.WriteLine(" "); 

Console.WriteLine("Index of 413 is " + 

al.BinarySearch(413));

上图是输出的结果,这次对ArrayList 只做了个简单的介绍,下次对ArrayList提供的实例方法和静态方法做个详细的介绍.