用点数据填充3维数组(锯齿状数组)

发布于 2024-11-09 15:29:56 字数 185 浏览 0 评论 0原文

我确实有一个 3 维矩阵

private int[][][] Matrix

,但我不知道如何填充它。 第一个维度是我的图片切片 第二个切片代表我的一个切片的 x 值,第三个切片代表我的 y 值。

那么有人知道如何用一些数据填充这个数组以进行测试吗?

谢谢

I do have a 3-dimensional matrix

private int[][][] Matrix

but I dont know how to fill this.
the first dimension is for my slices of a picture
the second for my x-values of one slice ad the 3rd slice for my y-values.

so das anybody know how to fill this arrays with some data for testing?

thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

装迷糊 2024-11-16 15:29:56

你可以这样做:

Matrix = new int[5][][]; // 5 slices
Matrix[0] = new int[3][]; // 3 x values for the first slice
Matrix[0][0] = new int[2]; // 2 y values for the first x value in the first slice

但我认为你不应该使用这样的东西。这是非常容易出错的。

我建议这样的事情:

class Slice
{
    public IList<XValue> XValues {get; set; }
}

class XValue
{
    public IList<YValue> YValues {get; set; }
}

class YValue
{
    // ...
}

var slices = new List<Slice>();

You can do something like this:

Matrix = new int[5][][]; // 5 slices
Matrix[0] = new int[3][]; // 3 x values for the first slice
Matrix[0][0] = new int[2]; // 2 y values for the first x value in the first slice

But I don't think that you should use something like this. It is very error prone.

I suggest something like this:

class Slice
{
    public IList<XValue> XValues {get; set; }
}

class XValue
{
    public IList<YValue> YValues {get; set; }
}

class YValue
{
    // ...
}

var slices = new List<Slice>();
与风相奔跑 2024-11-16 15:29:56

您可以使用数组文字创建数组的数组的数组:

private int[][][] Matrix = {
  {
    {1,2,3},
    {4,5}
  },
  {
    {1,2},
    {3},
    {4,5,6,7,8},
    {9,10}
  },
  {
    {1,2,3}
  }
};

请注意,这是一个锯齿状数组,因此不同的子数组可以具有不同数量的项目。如果您想要一个三维矩阵,您可能需要三维数组 int[,,] 而不是嵌套的一维数组。

You can use array literals to create arrays of arrays of arrays:

private int[][][] Matrix = {
  {
    {1,2,3},
    {4,5}
  },
  {
    {1,2},
    {3},
    {4,5,6,7,8},
    {9,10}
  },
  {
    {1,2,3}
  }
};

Note that this is a jagged array, so different subarrays can have different number of items. If you want a three dimensional matrix you might want the three dimensional array int[,,] instead of nested one dimensional arrays.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文