这是一个一般的编程问题。
我在很多帖子中看到,通过双for循环迭代2d数组是“可怕的”“丑陋的”等等.为什么会这样呢?
与字典之类的数据结构相比,数组不是一种有效的数据结构吗?而双for循环也不是比foreach或其他替代方法更有效吗?另外,如果您使用的是2d数组,则通常处理的是2d坐标系。X和y位置已经“内置”到数据结构中,作为数组的索引(因此您不需要添加元组作为字典键),通过更改for循环参数,您可以非常廉价地遍历网格的不同部分,同时完全忽略不想迭代的部分。例如,为了避免“外部”行和列,您可以这样做。
for (int x = 1; x < Grid.GetLength(0)-1;
我有很多类型声明:
module SumProduct where
data GuessWhat = Chickenbutt deriving (Eq, Show)
data Id a = MkId a deriving (Eq, Show)
data Product a b = Product a b deriving (Eq, Show)
data Sum a b = First a
| Second b
deriving (Eq, Show)
data RecordProduct a b =