我们有一个哈希表作为对值列表的只读引用,如下所示:
internal static readonly Hashtable relationcodeAcodeB = new Hashtable
{
{"149", "23"},
{"139", "17"}
}
现在,我们需要一个可以容纳3个值(列)并通过其他2个值快速查找值的结构。
像这样的东西:
internal static readonly Hashtable relationcodeAcodeBcodeC = new Hashtable
{
{"149", "23", "xx"},
{"139", "17", "xxx"}
}
string codeB=relationcodeAcodeBcodeC[codeA="149"]["codeB"];
最佳答案
假设您的对象具有三个属性codeA,codeB和codeC,则维护三个哈希表,如下所示:
Dictionary<string, MyObj> dictA, dictB, dictC;
创建新的
MyObj
时,将其添加到三个字典中:dictA[obj.codeA] = obj;
dictB[obj.codeB] = obj;
dictC[obj.codeC] = obj;
查找非常容易。您的示例将被编码为
dictA["149"].codeB
当然,请在一个大的查找类中保持所有内容整齐。
关于c# - 可容纳3列并通过任意列快速查找行的结构,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10894708/