在C#中Length和GetLength()使用示例

在C#.Net中,Length和GetLength()基本上与数组一起使用,大多数情况下这两个东西会让开发人员感到困惑。在这篇文章中,我们将学习C#中Length和GetLength()的区别是什么?何时何地使用?

Length是一个属性,它指定数组中元素的总数。而GetLength()是数组类的一个预定义方法。它有一个指定维度的参数。如果我们将0传递给GetLenth()方法,那么它将返回第一个维度的大小。如果我们将1传递给getlengthth()方法,那么它将返回第二个维度的大小。

长度属性示例


using System;

namespace arrayEx
{
    class Program
    {
        static void Main(string[] args)
        {
            int i = 0;
            int[] X;

            X = new int[5];

            Console.Write("Enter Elements : \n");
            for (i = 0; i < X.Length; i++)
            {
                Console.Write("\tElement[" + i + "]: ");
                X[i] = Convert.ToInt32(Console.ReadLine());
            }

            Console.Write("\n\nElements are: \n");
            for (i = 0; i < X.Length; i++)
            {
                Console.WriteLine("\tElement[" + i + "]: "+X[i]);
            }          
        }
    }
}


输出结果


Enter Elements :      
        Element[0]: 10
        Element[1]: 20
        Element[2]: 30
        Element[3]: 40
        Element[4]: 50
		
Elements are:         
        Element[0]: 10
        Element[1]: 20
        Element[2]: 30
        Element[3]: 40
        Element[4]: 50 
Press any key to continue . . .


在(i = 0; i <X.Length; i ++)的语句中,我们使用了X.Length属性,该属性返回的数组长度为5。

GetLength()方法示例


using System;

namespace arrayEx
{
    class Program
    {
        static void Main(string[] args)
        {
            int i = 0;
            int j = 0;
            int[,] X;

            X = new int[2,3];

            Console.Write("Enter Elements : \n");
            for (i = 0; i < X.GetLength(0); i++)
            {
                for (j = 0; j < X.GetLength(1); j++)
                {
                    Console.Write("\tElement[" + i + ","+j+"]: ");
                    X[i, j] = Convert.ToInt32(Console.ReadLine());
                }
            }

            Console.Write("\n\nElements are: \n");
            for (i = 0; i < X.GetLength(0); i++)
            {
                for (j = 0; j < X.GetLength(1); j++)
                {
                    Console.Write(X[i, j] + " ");
                }
                Console.WriteLine();
            }

        }
    }
}


输出结果


Enter Elements :        
        Element[0,0]: 11
        Element[0,1]: 22
        Element[0,2]: 33
        Element[1,0]: 44
        Element[1,1]: 55
        Element[1,2]: 66
                        
                        
Elements are:           
11 22 33                
44 55 66
Press any key to continue . . .


在上面的示例中,GetLength指定行数,而GetLength(1)指定列数。