查找多维数组中的所有字节?

时间:2015-05-26 15:55:38

标签: c# arrays

所以我有一个从0到4的二维字节数组,这些字节都是混乱的。我想要做的是指定一个字节值,例如3.然后我想得到数组中每3个的偏移量(x和y位置)并将它们放在一个列表(或另一个数组)中,这样我就可以迭代了通过所有3s。

我很确定这是可能的,我只是不知道该怎么做。我知道没有用于迭代多维数组的预构建方法,所以我必须编写一个方法来做到这一点。

总结:从2D数组中过滤特定类型的所有字节,并将它们的坐标(偏移)放在列表​​或另一个数组中。

1 个答案:

答案 0 :(得分:1)

public class Vector2
{
    public int X { get; set; }
    public int Y { get; set; }
}


 public List<Vector2> GetBytes(byte[,] array, byte value)
    {
        List<Vector2> list = new List<Vector2>();
        int count;
        for (int i = 0; i < XSize; i++)
            for (int k = 0; k < YSize; k++)
                if (array[i, k] == value)
                    list.Add(new Vector2 { X = i, Y = k });
        return list;
    }

这应该这样做。

已编辑,您可以看到以下值:

list[position].X
list[position].Y