C# Hashtable con ejemplos
¿Qué es Hashtable en C#?
Una tabla hash es una colección especial que se utiliza para almacenar elementos clave-valor. Entonces, en lugar de almacenar solo un valor como la pila, la lista de arreglos y la cola, la tabla hash almacena 2 valores. Estos 2 valores forman un elemento de la tabla hash.
A continuación se muestran algunos ejemplos de cómo se verían los valores de una tabla hash.
{ "001" , ".Net" } { "002" , ".C#" } { "003" , "ASP.Net" }
Arriba tenemos 3 pares de valores clave. Las claves de cada elemento son 001, 002 y 003 respectivamente. Los valores de cada par de valores clave son ".Net", "C#" y "ASP.Net" respectivamente.
Veamos las operaciones disponibles para la colección Hashtable con más detalle.
Declaración de la tabla Hash
La declaración de un Hashtable se muestra a continuación. Una tabla Hash se crea con la ayuda del tipo de datos Hashtable. La palabra clave "nuevo" se utiliza para crear un objeto de Hashtable. Luego, el objeto se asigna a la variable ht.
Hashtable ht = new Hashtable()
Agregar elementos al Hashtable
El método Add se utiliza para agregar un elemento a la cola. La sintaxis general de la declaración se proporciona a continuación
HashTable.add("key","value")
Ejemplo 1:
Recuerde que cada elemento de la tabla hash se compone de 2 valores, uno es la clave y el otro es el valor.
Ahora, veamos cómo funciona a nivel de código. Todo el código mencionado a continuación se escribirá en nuestra aplicación Consola.
El código se escribirá en nuestro archivo Program.cs. En el siguiente programa, escribiremos el código para ver cómo podemos usar los métodos mencionados anteriormente.
Por ahora, en nuestro ejemplo, solo veremos cómo podemos crear una tabla hash, agregar elementos a la tabla hash y mostrarlos en consecuencia.
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Hashtable ht = new Hashtable(); ht.Add("001",".Net"); ht.Add("002","C#"); ht.Add("003","ASP.Net"); ICollection keys = ht.Keys; foreach (String k in keys) { Console.WriteLine(ht[k]); } Console.ReadKey(); } } }
Explicación del código:-
-
Primero, declaramos la variable de tabla hash usando el tipo de datos Hashtable usando la palabra clave "Nuevo". El nombre de la variable define es 'ht'.
-
Luego agregamos elementos a la tabla hash usando el método Agregar. Recuerde que debemos agregar un elemento de clave y valor al agregar algo a la tabla hash.
-
No existe una forma directa de mostrar los elementos de una tabla hash.
- Para mostrar la tabla hash, primero necesitamos obtener la lista de claves (001, 002 y 003) de la tabla hash.
- Esto se hace a través de la interfaz ICollection. Este es un tipo de datos especial que se puede usar para almacenar las claves de las colecciones de una tabla hash. Luego asignamos las claves de la colección de tablas hash a la variable 'claves'.
-
A continuación, para cada valor clave, obtenemos el valor asociado en la tabla hash mediante la instrucción ht[k].
Si el código anterior se ingresa correctamente y el programa se ejecuta, se mostrará el siguiente resultado.
Salida:
Veamos algunos métodos más disponibles para las tablas hash.
ContieneClave
Este método se usa para ver si una clave está presente en Hashtable. A continuación se muestra la sintaxis general de esta declaración. La declaración devolverá verdadero si la clave existe, de lo contrario devolverá el valor falso.
Hashtable.Containskey(key)
ContieneValor
Este método se usa para ver si un valor está presente en la tabla Hash. A continuación se muestra la sintaxis general de esta declaración. La declaración devolverá verdadero si el valor existe; de lo contrario, devolverá el valor falso.
Hashtable.ContainsValue(value)
Ejemplo 2:
Cambiemos el código en nuestra aplicación Consola para mostrar cómo podemos usar el método "Containskey" y "ContainsValue".
using System; using System.Collections; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace DemoApplication { class Program { static void Main(string[] args) { Hashtable ht = new Hashtable(); ht.Add("001",".Net"); ht.Add("002","C#"); ht.Add("003","ASP.Net"); Console.WriteLine(ht.ContainsKey("001")); Console.WriteLine(ht.ContainsValue("C#")); Console.ReadKey(); } } }
Explicación del código:-
- Primero, usamos el método containskey para ver si la clave está presente en la tabla hash. Este método devolverá verdadero si la clave está presente en la tabla hash. Este método debería devolver verdadero ya que la clave existe en la tabla hash.
- Luego, usamos el método ContainerValue para ver si el valor está presente en la tabla hash. Este método devolverá 'verdadero' ya que el valor existe en la tabla hash.
Si el código anterior se ingresa correctamente y el programa se ejecuta, se mostrará el siguiente resultado.
Salida:
A partir de la salida, puede ver claramente que tanto la clave como el valor que se busca están presentes en la tabla hash.
Resumen
Una tabla Hash se utiliza para almacenar elementos que se componen de pares de valores clave. Para acceder al valor de un elemento, debe conocer la clave del elemento.
Lenguaje C
- Expresiones, declaraciones y bloques de C# (con ejemplos)
- C++ do...while bucle con ejemplos
- Punteros de C++ con ejemplos
- Tipo de datos Char de C++ con ejemplos
- Sobrecarga de operadores de C++ con ejemplos
- Funciones de C++ con ejemplos de programas
- Tutorial de colecciones de C# con ejemplos
- Python String count () con EJEMPLOS
- Función Python round() con EJEMPLOS
- Función Python map() con EJEMPLOS
- Python Timeit() con ejemplos