No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Diccionario Polimórfico

15/35
Recursos

El objeto tipo Dictionary necesita dos parámetros, el primero es la llave y el segundo es el contenido. Haciendo que la instancia de un Dictionary quede de la siguiente forma:

Dictionary<int, string> diccionario = new Dictionary<int, string>();

Las llaves en los diccionarios son únicas.

Aportes 22

Preguntas 2

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

En este caso el dictionary se define con una key y value,
C#
Represents a collection of keys and values.

Java
El HashMap es uno de los objetos mas utilizados en java, implementa la interficie Map y no es mas que un conjunto de key-value. En esto objeto puedes guardar cualquier tipo de objeto, asignándole una key, para, mas tarde, poder recuperar ese objeto mediante la key.

Ejemplo de dictionary en C#

< private void addList()
        {
            Dictionary<String, int> datos = new Dictionary<string, int>();
            datos.Add("Uno", 1);
        }>

Muy interesante, la implementación que se me ocurre es para Web. Como usualmente las solicitudes a servidores retornan JSON podríamos definir un diccionario que se poblaría con las llaves-valores de dicha solicitud y luego manipularlo de una manera más ordenada y que sea congruente con la estructura definida en la respuesta.

A diferencia de un array, un diccionario solo puede manejar dos valores. Pero su manejo es más cómodo y sencillo.

El objeto tipo Dictionary necesita dos parámetros, el primero es la llave y el segundo es el contenido. Haciendo que la instancia de un Dictionary quede de la siguiente forma:

Dictionary<int, string> diccionario = new Dictionary<int, string>();

En el ejemplo se generará otra funcionalidad

Se declara como fue explicado anteriormente

Luego se inicializa asignando valor a este diccionario así:

diccionario.Add(10,"Elvis");
diccionario.Add(23,"Ecuador es el mejor país");

Se lo recorre de esta manera, existen otras que se mostrarán también

foreach(var keyValPair in diccionario)
              {
                   WriteLine($"Key:{keyValPair.Key} Valor:{keyValPair.Value}");
              }

Imprime la llave y el valor que contiene esa llave

Otra manera de acceder al diccionario es indicar cuál llave queremos que se visualice así de la siguiente manera

Printer.WriteLine("Acceso a Diccionario");
WriteLine(diccionario[23]);

En esta manera está indicando que visualice el contenido de la llave 23 del diccionario declarado

También podemos adicionar objetos de la siguiente manera

diccionario[0]="Portoviejo";
WriteLine(diccionario[0]);

Adicional de explicar el funcionamiento del diccionario de esta forma básica crearemos otro diccionario que se asemeje un poco a los casos reales en que se nos presente la posibilidad de hacer uso del mismo.

var dic= new Dictionary<string, string>();

La llave en esta ocasión no será int , sino que será string

dic["Luna"] = "Cuerpo celeste que gira alrededor de la tierra";
WriteLine(dic["Luna"]);

De esta manera se podrá hacer pero al hacer lo siguiente

dic["Luna"] = "Cuerpo celeste que gira alrededor de la tierra";

WriteLine(dic["Luna"]);
dic.Add("Luna", "Protagonista de Soy Luna");
WriteLine(dic["Luna"]);

Nos generará un error ya que no podemos crear nuevamente la misma llave porque son únicas en un diccionario

Una traducción mas correcta a keyValPair, sería llave de valor par.

  • Contienen la condición que el valor de la “key” no puede repetir.

  • Permite realizar la operación tanto como Array y como List.

me gusto mucho esta clase… todo super claro

P.D lo mejor fue la invitación para ver soy Luna jejeje

genial funcionalidad q nos proporciona c# para usar en listas que solo convergan llave y valor, esta muy bueno para el uso de listas autocompletable q se manipule a travez de JSON

Se puede hacer un diccionario de objetos 🤔

Dictionary<int, string> diccionario = new Dictionary<int, string>();
diccionario.Add(10, "Almapase");
diccionario.Add(432, "Lorem Ipsum");
foreach (var keyValPair in diccionario)
   {
       WriteLine($"Key: {keyValPair.Key}, Value: {keyValPair.Value}");
     }
Printer.DibujarLinea();
WriteLine(diccionario[432]);

Printer.DibujarLinea();
diccionario[0] = "Otro Lorem Ipsum";
WriteLine(diccionario[0]);

Printer.WriteTitle("OTRO DICCIONARIO");
var dic = new Dictionary<string, string>();
dic["Luna"] = "Cuerpo celeste que gira alrededor de la Tierra";
WriteLine(dic["Luna"]);
#region Ejemplos de Diccionario

    Dictionary<int,string> diccionario = new Dictionary<int, string>();
    diccionario.Add(10,"JuanD");
    diccionario.Add(20,"DavidJ");
    foreach (var keyValPair in diccionario)
    {
        Console.WriteLine($"Key: {keyValPair.Key} Valor: {keyValPair.Value}");

    }
    Console.WriteLine("=======================");
    Console.WriteLine("Acceso a Diccionario");
    Console.WriteLine("=======================");
    diccionario[0] = "Parker";
    Console.WriteLine(diccionario[0]);
    Console.WriteLine("");
    Dictionary<string,string> diccionario2 = new Dictionary<string, string>();
    diccionario2["Play"] = "Play Programa Diccionario";
    Console.WriteLine(diccionario2["Play"]);

#endregion

Sino soy capaz de escribirlo yo mismo, creo que no voy a aprenderlo

Me hace acordar a los HashMap de Java

achiss, esto lo vi en Python xd :v

un clasico!

Excelente clase genial el uso de los diccionarios en C#

Muy interesante el uso de bibliotecas, no las conocía!

Jamás en mi vida lo había ocupado ese diccionario, excelente clase!!

También es interesante usar Hashtable que no está ligado a un tipo en particular, a diferencia del Dictionary.

Hashtable openWith = new Hashtable();

Se agrega este diccionario

public void ImprimirDiccionario(Dictionary<LlaveDiccionario, IEnumerable<ObjetoEscuelaBase>> dic,
                        bool imprEval = false)```

Las llaves en los diccionarios son únicas, son irrepetibles. Aprendimos Cómo es un diccionario y como lo podemos manipular.

Al fin comprendo lo que es un diccionario jaja