数组大小(长度)在C#

我怎样才能确定在C#中的数组中的大小(长度/对象的数量)?

如果它是一个一维数组a

 a.Length 

会给出a元素的个数。

如果b是一个矩形multidimensional array(例如, int[,] b = new int[3, 5];

 b.Rank 

将给出维数(2)的数量

 b.GetLength(dimensionIndex) 

将获得任何给定维度的长度(基于0的维度的索引 – 所以b.GetLength(0)是3, b.GetLength(1)是5)。

请参阅System.Array文档以获取更多信息。

正如@Lucero在注释中指出的那样,有一个“锯齿状数组”的概念,它实际上只不过是一维(通常是一维)数组的一维数组。

例如,可以有以下几点:

 int[][] c = new int[3][]; c[0] = new int[] {1, 2, 3}; c[1] = new int[] {3, 14}; c[2] = new int[] {1, 1, 2, 3, 5, 8, 13}; 

请注意, c的3个成员都有不同的长度。 在这种情况下,和以前一样, c.Length将指示c ,(3)和c[0].Lengthc[1].Lengthc[2].Length c.Length的元素个数为3,2和7,分别。

你可以看一下Array的文档来找出这个问题的答案。

在这个特定的情况下,你可能需要长度 :

 int sizeOfArray = array.Length; 

但是既然这是一个基本的问题,你毫无疑问还有更多这样的问题,而不仅仅是告诉你答案,我宁愿告诉你如何自己find答案。

Visual Studio智能感知

当你input一个variables的名字并按下. 键将显示该对象上可用的所有方法,属性,事件等的列表。 当你突出显示一个成员时,它会给你一个简要的描述。

按F1

如果你发现一个方法或属性可以做你想要的,但是你不确定,你可以把光标移到它上面,然后按F1来获得帮助。 在这里你可以得到更详细的描述以及相关信息的链接。

search

size of array in C#的search条件给出了很多链接,告诉你的问题的答案等等。 程序员必须学习的最重要的技能之一就是如何find信息。 自己找答案往往会更快,特别是如果之前曾经问过同样的问题。

使用教程

如果你刚刚开始学习C#,你会发现更容易遵循教程。 我可以推荐MSDN上的C#教程 。 如果你想要一本书,我会推荐Essential C# 。

堆栈溢出

如果您无法自行find答案,请随时在Stack Overflow上发布问题。 但是,如果您表明您已经努力首先自己find答案,那么我们感激不尽。

使用Length属性。

 int[] foo = new int[10]; int n = foo.Length; // n == 10 

yourArray.Length 🙂

对于单维数组,可以使用Length属性:

 int size = theArray.Length; 

对于multidimensional array, Length属性返回数组中项目的总数。 您可以使用GetLength方法来获取其中一个维度的大小:

 int size0 = theArray.GetLength(0); 

一维数组

 int[] listItems = new int[] {2,4,8}; int length = listItems.Length; 

为multidimensional array

 int length = listItems.Rank; 

获得1维的大小

 int length = listItems.GetLength(0); 

在大多数情况下,使用“长度”和“计数”。

阵:

 int[] myArray = new int[size]; int noOfElements = myArray.Length; 

键入的列表数组:

 List <int> myArray = new List<int>(); int noOfElements = myArray.Count; 

它是这样的:1D:

  type[] name=new type[size] //or =new type[]{.....elements...} 

2D:

  type[][]name=new type[size][] //second brackets are emtpy 

那么当你使用这个数组:

  name[i]=new type[size_of_sec.Dim] 

或者你可以声明像matrix的东西

 type[ , ] name=new type [size1,size2]