C++ map<T1, T2> Equivalente em C#

Muhammad Maisam Abbas 16 fevereiro 2024
  1. C++ map<key, value> Equivalente em C#
  2. C++ unordered_map<chave, valor> Equivalente em C#
C++ map<T1, T2> Equivalente em C#

Este tutorial irá apresentar o equivalente em C# do map<T1, T2> em C++.

C++ map<key, value> Equivalente em C#

A estrutura de dados map<key, value> em C++ é usada para conter dados na forma de pares chave-valor. A alternativa mais próxima a isso é a classe Dictionary<Tkey, Tvalue> em C#. A estrutura de dados Dictionary também contém dados na forma de pares de valor-chave em C#. Se estivermos preocupados com a ordem das entradas dentro do dicionário, podemos usar a classe SortedDictionary<Tkey, Tvalue>. O exemplo de código a seguir nos mostra como podemos armazenar dados na forma de um par de valor-chave com a classe SortedDictionary<Tkey, Tvalue> em C#.

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);
      }
    }
  }
}

Resultado:

[1, ABC]
[2, DEF]
[3, GHI]

No código acima, criamos o dicionário classificado person com a classe SortedDictionary<int, string> em C#. Passamos dados para o dicionário person na forma de pares de valor-chave com a função SortedDictionary.Add(). No final, imprimimos os dados dentro do dicionário person com um loop foreach.

C++ unordered_map<chave, valor> Equivalente em C#

Quando falamos sobre a estrutura de dados unordered_map<chave, valor> em C++, estamos apenas preocupados em armazenar os dados na forma de pares de valor-chave e não com a ordem dos pares. Nesse caso, podemos utilizar a classe Dictionary<Tkey, Tvalue> para armazenar dados na forma de pares de key-value em C#. Veja o exemplo abaixo.

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);
      }
    }
  }
}

Resultado:

[1, ABC]
[2, DEF]
[3, GHI]

No código acima, criamos o dicionário não classificado person com a classe Dictionary<int, string> em C#. Passamos os dados para o dicionário person na forma de pares de valor-chave com a função Dicionário.Adicionar(). No final, imprimimos os dados dentro do dicionário person com um loop foreach.

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

Artigo relacionado - Csharp Dictionary