欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

.NET框架-Array的详细介绍

程序员文章站 2022-03-19 23:17:56
...



  Array是.NET提供的最基础的数据集合,通过索引直接访问集合元素。提供一维或多维数据存储,并支持诸如,查询,搜索,排序,复制等操作。
提供的主要接口,根据语义划分,主要包括:

.NET框架-Array的详细介绍

  也可以打百度脑图查看:
  http://naotu.baidu.com/file/f879a94fe2163c365cc22f4e4bbcc7dc

  一维数组声明,创建,初始化:
1)直接在初始化器内进行:

           int[] mp = new int[6] { -50, -30, -10, 10, 30, 50 };

2)分别赋值:

            mp[0] = -50;
            mp[1] = -30;
            mp[2] = -10;
            mp[3] = 10;
            mp[4] = 30;
            mp[5] = 50;

如下图所示,一维图的编号分别为0,1,2,3,4,5


.NET框架-Array的详细介绍

多维(例如二维)数组声明,创建,初始化:(如上图所示,二维的编号分别为0,1,2,3,4,5)

            int[,] point = new int[2, 6] {
             { -50, -30, -10, 10, 30, 50 },//第0维
             { 50, 30, 10, 10, 30, 50 }//第1维 
                                         };

  分别初始化:

            //点0
            point[0, 0] = -50;            point[1, 0] = 50;            //点1
            point[0, 1] = -30;            point[1, 1] = 30;            //点2
            point[0, 2] = -10;            point[1, 2] = 10;            //点3
            point[0, 3] = 10;            point[1, 3] = 10;            //点4
            point[0, 4] = 30;            point[1, 4] = 30;            //点5
            point[0, 5] = 50;            point[1, 5] = 50;

  分别比较一维和多维,接口方法的语义区别:

            //获取某维的元素个数
            int mpLen0 = mp.GetLength(0);//6
            int pointLen0 = point.GetLength(0);//2
            int pointLen1 = point.GetLength(1);//6

            //获取某个维度的下标最大值
            int mpUpperBound = mp.GetUpperBound(0); //5
            int pointUpperBound0 = point.GetUpperBound(0);//1
            int pointUpperBound1 = point.GetUpperBound(1);//5
            //获取某个维度的下标最小值
            int mpLowBound = mp.GetLowerBound(0);//0
            int pointLowBound0 = point.GetLowerBound(0);//0
            int pointLowBound1 = point.GetLowerBound(1);//0

            //获取所有维数的元素总数
            int mpLen = mp.Length;//6
            int pointLen = point.Length;//12
            //获取维数
            int mpRank = mp.Rank;//1
            int pointRank = point.Rank;//2

  总结
  1 Array在编译时必须确定元素每一维度的元素个数,这是它最大的缺陷,对于运行时才能确定某个维度的元素个数的情况,这个数据结构是不能满足条件的!
  2 Array创建时的类型为强类型,必须指定。
  

以上就是.NET框架-Array的详细介绍的详细内容,更多请关注其它相关文章!

相关标签: .NET框架,Array