C#数组和集合专题1(Array)

一、创建Array数组 arr

C#中提供了一个名为System.Array的类,它是CLR中所有数组的基类,通过它可以对数组进行许多的操作。

Array arr=Array.CreateInstance(typeof(int),8);

创建了一个int长度为8的一维数组arr,其中typeof用于获取类型的System.Type对象,Type实例可以表示类、值类型、数组、接口和枚举器。使用CreateInstance()的其它重载形式可以创建多维数组。要创建一个3行4列的二维字符串数组,可以这样写

Arrar myStr=Array.CreateInstance(typeof(string),3,4);

 

通过一个实例了解System.Array一般的属性和方法:

using System;
namespace ArrayExample
{
    class ArrayTest
    {
        static void Main(string[]args)
        {
            //构建数组
            Array arr = Array.CreateInstance(typeof(string), 4);
            //初始化数组
            arr.SetValue("我", 0);
            arr.SetValue("为", 1);
            arr.SetValue("秋", 2);
            arr.SetValue("香", 3);
            Console.WriteLine("数组值");
            for (int i = 0; i < 4; i++)
            {
                Console.WriteLine("元素{0}:{1}", i + 1, arr.GetValue(i));
            }
            Console.WriteLine("\n数组元素的总个数:{0}", arr.Length.ToString());
            Console.WriteLine("\n数组秩(数组的维数):{0}", arr.Rank.ToString());
            Array.Sort(arr); //排序是静态的方法
            Console.WriteLine("\n排序后的数组为");
            for (int i = 0; i < arr.Length; i++)
            {
                Console.WriteLine("元素{0}:{1}", i + 1, arr.GetValue(i));
            }
            Array.Reverse(arr); //反转也静态的
            Console.WriteLine("\n排序后的数组为");
            for (int i = 0; i < arr.Length; i++)
            {
                Console.WriteLine("元素{0}:{1}", i + 1, arr.GetValue(i));
            }
        }
    }
}

posted on 2012-06-29 09:44  流星落  阅读(283)  评论(0编辑  收藏  举报

导航