在 C# 中初始化字典

Muhammad Maisam Abbas 2023年1月30日 2021年3月21日
  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