21

在回答关于 的问题double[,]时,我为该数据结构添加了 LINQPad 输出的屏幕截图:

双倍的[,]

但是,我想知道 a 是什么double[,,]样子的,而 LINQPad 不会为我可视化它。此外,我不明白其中的数据格式:

   int[,,] foo = new int[,,]
   { 
     { 
        { 2, 3}, 
        { 3, 4}
     },
     { 
        { 3, 4},
        { 1, 5} 
     }
   };

谁能帮我想象一下?

4

7 回答 7

19

You can think of this has having a set of tables stacked on top of each other. So you would need to specify a triplet to retrieve the item, which would specify which table, column, and row to get the value from.

Here's what a 3x3x3 array can be visualized as:

enter image description here

于 2013-07-22T19:44:13.723 回答
9

这是一个长方体

它是一个具有 6 个面的三维实体,都是矩形。

你可以进一步想象长方体被分解成多个立方体,每个立方体都有一个值。

于 2013-07-22T19:37:17.160 回答
8

这是一个 3D 数组。所以你必须做一个 3D 表示来可视化它。

您可以考虑使用多个乐高积木创建一个立方体(或更准确地说是矩形长方体),其中每个积木包含 1 个整数。

于 2013-07-22T19:35:30.870 回答
3

正如其他人所说,它是 3D 数组(2D 数组的数组)。您可以使用此扩展程序进行可视化。

于 2013-07-22T19:48:21.910 回答
3

那将是一个长方体(3 维数组)——它可以随心所欲地深入(维度方面),但是在第 3 维之后可视化变得非常困难。

你可以把它想象成一堆给定类型的桌子;这个类比递归地起作用。

于 2013-07-22T19:36:48.850 回答
1

也很可能以“枢轴”格式表示一个 n 维数组,例如:

在此处输入图像描述

对于二维以上的数组,这是更容易生成和读取的格式之一。

于 2013-08-18T23:31:33.113 回答
0

多维数组看起来像一个有 6 面的立方体,并具有 3 个属性宽度、高度和深度,当您确定深度时,当 2d 数组的深度大于 1 时,您将 2 维数组的页面置于真实位置,我们创建 3d 数组。看这篇文章深入了解这个概念。和这篇文章用于编程

于 2013-07-23T08:09:49.103 回答