C#中,我想把一个dictionary的键所组成的集合转化为一个数组
时间: 2024-11-05 15:33:18 浏览: 18
C#将HashTable中键列表或值列表复制到一维数组的方法
在C#中,如果你想将`Dictionary<TKey, TValue>`类型的键(Key)集合转换为数组,可以使用`ToKeysArray()`这样的自定义方法,假设已经有了`Dictionary`实例`dict`,步骤如下:
```csharp
public static T[] ToKeysArray<TValue>(this Dictionary<TKey, TValue> dict)
{
return dict.Keys.Cast<TKey>().ToArray();
}
// 使用示例
Dictionary<string, int> myDict = new Dictionary<string, int>();
TKey[] keysAsArray = myDict.ToKeysArray(); // 这里keysAsArray就是字符串数组,包含myDict的所有键
```
这里我们使用了LINQ(Language Integrated Query)的`Cast`方法将`IEnumerable<TKey>`(键的集合)转换为`TKey[]`(指定类型的数组),然后调用`ToArray()`方法完成实际的数组创建。
阅读全文