任何不使用字典的理由
-
27-09-2019 - |
题
我正在与同事讨论是否最好使用Dictionary并在结果集更改时重新填充它,还是每次都对列表中的所有元素使用linq循环。
我们正在尝试映射父/子关系,我建议使用ParentID作为字典键,并使用字典值作为自定义对象。
我们通常将需要遍历所有父母/子女,然后逐一列出。
在这种情况下,您有什么理由不想使用字典吗?如果是这样,您将使用
解决方案
如果您确实确实需要每次都对整个集合进行迭代,那么拥有一个Dictionary
不会有太多(如果有的话)好处。另一方面,如果您偶尔需要通过特定实例的键来定位特定实例,那么可能需要Dictionary
。
请注意,即使您使用的是字典,您仍然可以在需要时仅遍历“值”列表,而不是比通过常规的List
进行迭代更多的“权重”,但是您仍然可以拥有字典功能(如果需要)。
其他提示
在性能方面,这实际上取决于您的特定应用程序,因此您必须进行测试。
不隶属于 StackOverflow