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

本文关键字:字节 数组 查找 | 更新日期: 2023-09-27 17:50:45

所以我有一个2D字节数组,范围从0到4,它们都是混乱的。我要做的是指定一个字节值,例如,3。然后我想获得数组中每个3的偏移量(x和y位置),并将它们放入列表(或另一个数组)中,以便我可以遍历所有3。

我很肯定这是可能的,我只是不知道怎么做。我知道没有预先构建的方法来遍历多维数组,所以我必须编写一个方法来做到这一点。

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

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

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