【发布时间】:2017-01-28 11:18:40
【问题描述】:
我有一个非常大的 3D 数组,其中包含一些数据 - 2 x 10000 x 4000。我将处理其中一些数据,但我不需要知道第一个维度 (2)。
有没有一种简单的方法来获取我的 2 x 10000 x 4000 3D 数组并创建一个尺寸为 10000 x 4000 的 2D 数组?这可以在不通过 for 循环的情况下完成吗?是否有一个复制功能或类似的东西可以让我将一个维度(或多个)的数组元素复制到一个全新的数组中?
【问题讨论】:
-
只有当它是一个锯齿数组时:
array[10000, 4000][2] -
不需要第一个维度是什么意思?您需要
myArray[ 0, _, _ ]或myArray[ 1 , _, _ ]。哪一个? -
@InBetween - 基本上,我正在寻找一种使数组更小的方法。当我处理数据时,我不需要知道第一维中的值。
-
@InBetween 我将我的数据视为一个代表 3d 数组的巨大立方体。我有一个函数,它采用与第一个维度相对应的参数 - 0 或 1。我想采用该值并将立方体切片作为二维数组获取。我最终会将该 2d 数组作为 JSON 返回,这就是为什么我试图只返回我需要的数据,而不是整个 3d 数组。
-
是的,这就是我的意思。问题是:你真的需要一个二维数组吗?或者你可以和可索引对象
mySlicedArray[ i, j]一起生活吗?
标签: c# arrays for-loop multidimensional-array