c#中使用Dictonary
时间: 2024-09-18 09:07:31 浏览: 4
在 C# 中,Dictionary 是一种关联数组(Hash Table 或哈希表),它允许通过键(Key)而不是索引来存储和访问值(Value)。它的主要特点包括:
1. **动态大小**:Dictionary 的大小可以自动调整以适应添加的数据量,不需要预先指定容量。
2. **键值对**:每个元素都是由唯一的键和对应的值组成,键不能重复,如果试图插入重复的键,旧的值将被替换。
3. **快速查找**:由于采用了哈希算法,查找、插入和删除操作的时间复杂度通常接近 O(1),即常数时间。
4. **可变类型**:值可以是任何类型的对象,包括基本类型和引用类型。
创建 Dictionary 的语法通常是这样的:
```csharp
Dictionary<TKey, TValue> dictionary = new Dictionary<TKey, TValue>();
```
例如,你可以创建一个字符串到整数的映射:
```csharp
Dictionary<string, int> numbers = new Dictionary<string, int>();
numbers.Add("One", 1);
numbers.Add("Two", 2);
```
要获取或修改值,你可以使用键作为索引:
```csharp
int number = numbers["One"]; // 获取 One 对应的数值
numbers["Three"] = 3; // 插入新的键值对
```
相关问题
c#中dictionary
C#中的Dictionary是一种键值对集合,它可以存储不同类型的键和值,并且提供了快速的查找和访问功能。下面是C#中Dictionary的基本用法和示例代码:
1. 创建Dictionary对象并添加键值对:
```csharp
Dictionary<string, int> dict = new Dictionary<string, int>();
dict.Add("apple", 1);
dict.Add("banana", 2);
dict.Add("orange", 3);
```
2. 访问和修改键值对:
```csharp
int value = dict["apple"]; // 获取键为"apple"的值
dict["banana"] = 5; // 修改键为"banana"的值
```
3. 判断键是否存在:
```csharp
bool containsKey = dict.ContainsKey("orange"); // 判断是否包含键"orange"
```
4. 遍历Dictionary:
```csharp
foreach (KeyValuePair<string, int> kvp in dict)
{
string key = kvp.Key;
int value = kvp.Value;
// 对键值对进行操作
}
```
5. 删除键值对:
```csharp
dict.Remove("apple"); // 删除键为"apple"的键值对
```
请注意,Dictionary中的键必须是唯一的,如果添加重复的键,会抛出异常。如果需要存储重复的键,可以使用其他集合类型,如List<KeyValuePair<TKey, TValue>>。
C# dictionary 使用
在C#中,Dictionary是一个键值对集合,通过键来访问对应的值。要使用Dictionary,首先需要创建一个Dictionary对象,可以通过以下方式进行初始化:
```
Dictionary<int, string> myDictionary = new Dictionary<int, string>();
```
接下来,可以使用Add方法向Dictionary中添加键值对,示例如下:
```
myDictionary.Add(1, "value1");
myDictionary.Add(2, "value2");
```
要访问Dictionary中的值,可以使用索引器,将键作为索引来获取对应的值,示例如下:
```
string value = myDictionary<span class="em">1</span><span class="em">2</span><span class="em">3</span><span class="em">4</span>