我有一个整数列表List<int> iFaciltyReqId = new List<int>();
,其元素是
我需要像上面的List一样订购下面的哈希表(如果元素不存在则需要排除)
结果应该是顺序中的hastable键 1153 1168 1155 1152 1176 676
我尝试如下,但结果不符合我的期望
foreach (var c in iFaciltyReqId)
{
foreach (var d in ohmItemSeqs.Keys)
{
if (Convert.ToInt32(c) == Convert.ToInt32(d))
{
sortedohmItemSeqs.Add(c, ohmItemSeqs.Values);
}
}
}
答案 0 :(得分:2)
我建议你简单地拿走你的列表并返回哈希表中的所有内容,如下所示:
var result = yourList.Where(i => yourHashTable.Contains(i)); // works for both HashSet<int> and Hashtable
答案 1 :(得分:1)
Hashtable
基本上是无序的数据结构,因此如果维持订单很重要,您将需要查看替代方案。
如果您希望通过插入确定订单,OrderedDictionary
可能是一个合适的选项,但这取决于您对该对象的其他需求。