在 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