欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

C#入门解析三部曲:深入理解各类数据——数组详解

最编程 2024-02-19 09:08:32
...

数组再熟悉不过了,不管是C,C#,Java基本啥都有,那我就聊点儿不一样的。在赋值的时候,要么开辟内存空间,要么将地址的引用赋给数组变量。

需要注意的是,如果指定了大小,并且包含了元素,那么元素个数一定要和大小一致。若只是指定了大小但未分配值,则每个元素使用默认值。引用类型,为null; 数值类型为0; bool类型为false; char类型为\0

多维数组和交错数组

多维数组是一个n*m的矩形,每一维的大小必须一致。而交错数组表示在一个数组里添加了一堆数组:

private static void Main(string[] args)
        {
            int[][] aa = { new int[] { 1, 0}, new int[] { 0, 2, 0 }, new int[] { 1, 2, 1,5 } };
            System.Console.WriteLine(aa[1][0]);  //返回true
            System.Console.ReadKey();
        }

每一维的大小可以不一致。

数组方法的使用

包括一些常用方法:Sort用于排序,BinarySearch用于先排序后获取指定元素的索引,目标元素不存在返回索引,值得特别注意的是:

  • Length方法:如果是多维数组会返回多维数组的总数,而如果是交错数组,会返回交错数组里的数组个数
  • Clear方法:不删除数组元素,只是将数组里的元素没一个都设置为其默认值
  • Clone方法:返回一个数组的拷贝,该拷贝是一个堆数据的拷贝,修改新数组不会影响原始数组
  • Rank方法:获取整个数组的维数,也就是N*M里的N.

除了以上常用方法,还可以使用ToCharArray将字符串转为字符数组。再使用Reverse方法反转该字符串数组