C# 中等效的 C++ Map<T1, T2>
本教程將介紹 C# 中相當於 C++ 中的 map<T1, T2>
的資料型別。
C++map<key, value>
在 C# 中等效
C++ 中的 map<key, value>
資料結構用於以 key-value
對的形式儲存資料。與此最接近的替代方法是 C# 中的 Dictionary<Tkey, Tvalue>
類。Dictionary
資料結構在 C# 中也是以 key-value
對的形式儲存資料。如果我們關心字典中條目的順序,則可以使用 C# 中的 SortedDictionary<Tkey, Tvalue>
類。以下程式碼示例向我們展示瞭如何使用 C# 中的 SortedDictionary<Tkey, Tvalue>
類以 key-value
對的形式儲存資料。
using System;
using System.Collections.Generic;
namespace C__map_alternative
{
class Program
{
static void Main(string[] args)
{
SortedDictionary<int, string> person = new SortedDictionary<int, string>();
person.Add(1, "ABC");
person.Add(2, "DEF");
person.Add(3, "GHI");
foreach(var pair in person)
{
Console.WriteLine(pair);
}
}
}
}
輸出:
[1, ABC]
[2, DEF]
[3, GHI]
在上面的程式碼中,我們使用 C# 中的 SortedDictionary<int, string>
類建立排序的字典 person
。我們通過 SortedDictionary.Add()
函式以鍵值
對的形式將資料傳遞到 person
字典中。最後,我們使用 foreach
迴圈在 person
字典中列印資料。
C++ unordered_map<key, value>
在 C# 中等效
當我們談論 C++ 中的 unordered_map<key, value>
資料結構時,我們只關心以 key-value
對的形式儲存資料,而不關心對中的順序。在這種情況下,我們可以利用 Dictionary<Tkey, Tvalue>
類在 C# 中以 key-value
對的形式儲存資料。請參見以下示例。
using System;
using System.Collections.Generic;
namespace C__map_alternative
{
class Program
{
static void Main(string[] args)
{
Dictionary<int, string> person = new Dictionary<int, string>();
person.Add(1, "ABC");
person.Add(2, "DEF");
person.Add(3, "GHI");
foreach (var pair in person)
{
Console.WriteLine(pair);
}
}
}
}
輸出:
[1, ABC]
[2, DEF]
[3, GHI]
在上面的程式碼中,我們使用 C# 中的 Dictionary<int, string>
類建立未排序的字典 person
。我們通過 Dictionary.Add()
函式以鍵值
對的形式將資料傳遞到人
字典中。最後,我們使用 foreach
迴圈在 person
字典中列印資料。
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