如何将ConcurrentDictionary转换为Dictionary?我有一个ConcurrentDictionary对象,我想将其设置为Dictionary对象。不允许在它们之间进行转换。所以我该怎么做?ConcurrentDictionary类实现IDictionary接口,这应该足以满足大多数需求。但是如果你真的需要一个具体的字典......varnewDictionary=yourConcurrentDictionary.ToDictionary(kvp=>kvp.Key,kvp=>kvp.Value,yourConcurrentDictionary.Comparer);//或...//用实际的键和值类型代替TKey和TValuevarnewDictionary=newDictionary(yourConcurrentDictionary,yourConcurrentDictionary.Comparer);为什么需要将其转换为字典?ConcurrentDictionary实现了IDictionary接口,这还不够吗?如果你真的需要一个字典,你可以使用LINQ复制它:varmyDictionary=myConcurrentDictionary.ToDictionary(entry=>entry.Key,entry=>entry.Value);请注意,这是重复的。您不能只将ConcurrentDictionary分配给Dictionary,因为ConcurrentDictionary不是Dictionary的子类型。这就是像IDictionary这样的接口的全部要点:您可以从具体实现(并发/非并发hashmap)中抽象出所需的接口(“某种字典”)。我想我找到了办法。以上就是C#学习教程:如何将ConcurrentDictionary转为Dictionary?分享的所有内容,如果对你有用,需要了解更多C#学习教程,希望大家多多关注——ConcurrentDictionaryconcDict=newConcurrentDictionary();词典dict=新词典(concDict);ConcurrentDictionarycd=newConcurrentDictionary();Dictionaryd=cd.ToDictionary(pair=>pair.Key,pair=>pair.Value);本文收集自网络,不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
