C# 拷贝 dictionary
时间: 2023-10-19 07:34:10 浏览: 118
要拷贝一个 Dictionary 对象,你可以使用 Dictionary 的构造函数或 LINQ 库中的 ToDictionary() 方法。
方法 1:使用 Dictionary 的构造函数
```csharp
Dictionary<TKey, TValue> originalDictionary = new Dictionary<TKey, TValue>(); // 原始的 Dictionary
// 使用构造函数进行拷贝
Dictionary<TKey, TValue> copiedDictionary = new Dictionary<TKey, TValue>(originalDictionary);
```
方法 2:使用 LINQ 的 ToDictionary() 方法
```csharp
Dictionary<TKey, TValue> originalDictionary = new Dictionary<TKey, TValue>(); // 原始的 Dictionary
// 使用 ToDictionary() 方法进行拷贝
Dictionary<TKey, TValue> copiedDictionary = originalDictionary.ToDictionary(entry => entry.Key, entry => entry.Value);
```
无论你选择哪种方法,都会创建一个新的 Dictionary 对象来存储拷贝后的键值对。请注意,这些方法只会拷贝字典本身的引用,而不是键和值的引用。如果原始字典中的键或值是引用类型,它们将会被共享。如果你需要深度拷贝字典中的引用类型,你需要手动复制它们。
阅读全文