0

我这样做:

long[] HistogramValues = Form1.GetHistogram(bitmap);
Form1.Histograms.AddRange(HistogramValues);

但直方图也包含 256 个值,如 HistogramValues。我希望在索引 [0] 的直方图中,将有来自 HistogramValues 的 256 个值,然后在 [1] 中还有 256 个值,然后是 [2],依此类推。

直方图是一个列表

4

3 回答 3

5

你需要的是一个数组列表

List<long[]> Histograms = new List<long[]>();

然后添加数组

long[] HistogramValues = Form1.GetHistogram(bitmap);
Form1.Histograms.Add(HistogramValues);
于 2012-10-05T15:39:50.490 回答
0

长数组列表 -List<long[]>

class Form1
{
    public Form1()
    {
         this.Histograms = new List<long[]>();
    }

    public List<long[]> Histograms { get; private set; }
}

long[] histogramValues = Form1.GetHistogram(bitmap);
Form1.Histograms.Add(histogramValues);

然后您可以这样访问每个直方图:

long[] fifthHistogram = Form1.Histograms[4]; 
于 2012-10-05T15:41:19.020 回答
0

听起来你想要一个二维数组或嵌套列表:

long[,] longArray = new long[16, 256];
List<List<long>> longList = new List<List<Long>>();

对于数组,您将有 16 列,每列有 256 个值。对于 List 实现,您可以根据需要添加任意数量的...可能longList[0] = new List<long>(256)适合您的情况,但这些列表无论如何都不受约束。

其他资源:

MSDN 多维数组

于 2012-10-05T15:43:22.107 回答