在 C# 中初始化字典

Muhammad Maisam Abbas 2023年10月12日
  1. 在 C# 中初始化预定义数据类型的字典
  2. 在 C# 中初始化用户定义数据类型的字典
在 C# 中初始化字典

在本教程中,我们将讨论在 C# 中初始化字典的方法。

在 C# 中初始化预定义数据类型的字典

字典数据结构以键/值对的形式保存数据。Dictionary<key, value> 类可用于在 C# 中创建字典。我们可以使用 Dictionary<key, value> 类的构造函数在 C# 中初始化字典。下面的代码示例向我们展示了如何使用 C# 中的 Dictionary<key, value> 类的构造函数来初始化字典。

using System;
using System.Collections.Generic;

namespace initialize_dictionary {
  class Program {
    static void Main(string[] args) {
      Dictionary<string, string> myDictionary = new Dictionary<string, string> {
        { "Key1", "Value1" },
        { "Key2", "Value2" },
        { "Key3", "Value3" },
      };
      foreach (var x in myDictionary) {
        Console.WriteLine(x);
      }
    }
  }
}

输出:

[Key1, Value1]
[Key2, Value2]
[Key3, Value3]

我们使用 C# 中的 Dictionary<key, value> 类的构造函数声明并初始化了字典 myDictionary。我们可以使用此示例声明和初始化任何预定义数据类型的字典,但不能使用 C# 中的此方法声明和初始化用户定义数据类型的字典。

在 C# 中初始化用户定义数据类型的字典

我们可以使用 C# 中的 new 运算符来初始化类对象的字典。new 运算符用于将内存位置分配给类定义。以下代码示例向我们展示了如何使用 C# 中的 new 运算符初始化类对象的字典。

using System;
using System.Collections.Generic;

namespace initialize_dictionary {
  public class Person {
    private string name;
    private string email;
    public Person(string n, string e) {
      name = n;
      email = e;
    }
    class Program {
      static void Main(string[] args) {
        Dictionary<int, Person> myDictionary =
            new Dictionary<int, Person> { { 1, new Person("Person 1", "email1") },
                                          { 2, new Person("Person 2", "email2") },
                                          { 3, new Person("Person 3", "email3") } };
      }
    }
  }

我们用字符串数据类型的属性 nameemail 声明了 Person 类。我们定义了一个构造函数来初始化 nameemail 类成员。我们用 C# 中的 new 运算符在 Dictionary<key, value> 类的构造函数内调用了 Person 类的构造函数。

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

相关文章 - Csharp Dictionary