在c#
中理解锯齿状和二维数组>本文阐明了在C#中向锯齿状和二维数组分配值并将值分配时的关键区别和潜在的陷阱。 让我们检查声明和作业的差异。
>声明差异:
核心差异在于这些数组类型在内存中的结构。
>锯齿状的数组(数组的数组):声明为>,锯齿状数组是一个数组,每个元素都是对另一个数组的引用。 这些内部阵列的长度可能不同。 您不能在初始声明期间预定内部阵列的大小。 正确的声明是:double[][] ServicePoint
。 内部阵列必须单独初始化,例如:double[][] ServicePoint = new double[10][];
ServicePoint[0] = new double[5]; ServicePoint[1] = new double[10];
>
二维阵列:double[,] ServicePoint = new double[10,9];
分配值的方法差异很大。
元素分别分配给每个内部数组。 您可以为每个内部数组分配不同的长度。
使用两个索引(行和列)访问元素。 您不能将一维数组分配给行或列;必须使用其行和列索引分别分配每个元素。 试图将1D数组直接分配到行()将导致编译器错误。
ServicePoint[0] = ...
不正确的二维数组分配:
通过了解这些基本区别和潜在错误,您可以在C#程序中有效地利用锯齿状和二维数组。
以上是在C#中,声明和分配给锯齿状和二维数组的主要差异和潜在错误是什么?的详细内容。更多信息请关注PHP中文网其他相关文章!