C# 字典,队列,数组
时间: 2023-07-12 12:12:03 浏览: 143
C# 中的字典(Dictionary)、队列(Queue)和数组(Array)是常用的数据结构,它们分别用于存储键值对、先进先出的元素和相同类型的元素。
### 字典(Dictionary)
字典是一种键值对集合,每个键值对称为一个项(Item),其中键(Key)唯一,对应一个值(Value)。在 C# 中,字典的实现类是 `Dictionary<TKey, TValue>`,其中 `TKey` 为键的类型,`TValue` 为值的类型。
下面是一个简单的示例,演示了如何使用字典:
```csharp
Dictionary<string, int> dict = new Dictionary<string, int>();
dict.Add("apple", 2);
dict.Add("banana", 3);
dict.Add("orange", 4);
foreach (KeyValuePair<string, int> item in dict) {
Console.WriteLine(item.Key + ": " + item.Value);
}
// Output:
// apple: 2
// banana: 3
// orange: 4
```
在上面的示例中,我们创建了一个名为 `dict` 的字典,键的类型为字符串,值的类型为整数。然后,我们使用 `Add` 方法向字典中添加三个项。最后,我们使用 `foreach` 循环遍历字典中的所有项,并输出它们的键和值。
### 队列(Queue)
队列是一种先进先出的数据结构,每次从队列中取出的元素都是最早插入队列的元素。在 C# 中,队列的实现类是 `Queue<T>`,其中 `T` 为元素的类型。
下面是一个简单的示例,演示了如何使用队列:
```csharp
Queue<int> queue = new Queue<int>();
queue.Enqueue(1);
queue.Enqueue(2);
queue.Enqueue(3);
while (queue.Count > 0) {
int num = queue.Dequeue();
Console.WriteLine(num);
}
// Output:
// 1
// 2
// 3
```
在上面的示例中,我们创建了一个名为 `queue` 的队列,元素的类型为整数。然后,我们使用 `Enqueue` 方法向队列中添加三个元素。最后,我们使用 `while` 循环遍历队列中的所有元素,并使用 `Dequeue` 方法取出元素并输出。
### 数组(Array)
数组是一种固定长度、相同类型的元素集合。在 C# 中,数组可以是一维、二维或多维的。数组的类型可以是任意数据类型,包括自定义数据类型。
下面是一个简单的示例,演示了如何使用数组:
```csharp
int[] nums = new int[3];
nums[0] = 1;
nums[1] = 2;
nums[2] = 3;
foreach (int num in nums) {
Console.WriteLine(num);
}
// Output:
// 1
// 2
// 3
```
在上面的示例中,我们创建了一个名为 `nums` 的整数数组,长度为 3。然后,我们使用下标运算符 `[]` 给数组中的元素赋值。最后,我们使用 `foreach` 循环遍历数组中的所有元素,并输出它们的值。
相关推荐
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![whl](https://img-home.csdnimg.cn/images/20210720083646.png)