【发布时间】:2014-07-15 09:54:16
【问题描述】:
想知道在 C#(.Net Framework 3.5) 中访问 2D 数据的最佳方式是什么 我正在尝试做一个简单的屏蔽应用程序,它将一组数字(0-9)屏蔽为一系列字母。需要屏蔽的数字是columnName,codition是rowName。
我使用了锯齿状数组和二维数组。有没有其他方法可以在编码和运行控制台应用程序方面有效。使用 rowName (string) 和 columnName (int) 我应该能够选择数据
所以如果我屏蔽的数字是 5 并且条件是“第三”,那么屏蔽的值应该是 ce
aa ab ac ad ae af
ba bb bc bd be bf
ca cb cc cd ce cf
da db dc dd de df
ea eb ec ed ee ef
如果屏蔽表发生变化,这是一个非常累人的过程,因为我需要去很多地方来编辑代码。我也必须能够访问其他人。
如果我给出 ba 和条件“秒”,我应该能够将 columnName 检索为 1。
换句话说,第 1 列中的所有数据的值都将为 1,无论条件如何。
ENUMs、List 或其他 STD 容器哪个更好。
请指教。并且将不胜感激如何访问数据的sinnpet。
谢谢
【问题讨论】:
-
“第三”行和第 5 列不会在 de 处结束。它们是基于 0 的还是基于 1 的?
-
这只是一个编码练习吗?这段代码的目的是什么?根据您提供的信息,我会说二维阵列就足够了。对于更复杂的情况,您应该考虑将“屏蔽数据”存储在数据库中。在我们发布代码之前,您应该发布代码;)。
-
@Dennis_E,对不起,我已经做出了修改。它们是基于 1 的
-
@user1567896 正如我所指出的,我已经知道如何在二维数组中进行操作。我想知道是否还有其他更高效的 STD 容器。据我的经理说,二维数组是资源密集型的。我对 Enums 和 ICollections 有点陌生
-
最困难的部分是将英文单词(如“third”)翻译成数字。我可能会为此使用字典。剩下的很简单。
标签: c# arrays ienumerable