所以我有一个2D字节数组,范围从0到4,都被弄乱了。我想做的是指定一个字节值,例如3。然后我想获取数组中每3个的偏移量(x和y位置)并将它们放在列表(或另一个数组)中,以便进行迭代通过所有3s。
我很确定这是可能的,我只是不知道该怎么做。我知道没有用于遍历多维数组的预构建方法,因此我必须编写一个方法来实现。
概括一下:从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
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句