C # - Clase Hashtable
La clase Hashtable representa una colección de key-and-value pairsque se organizan en función del código hash de la clave. Utiliza la clave para acceder a los elementos de la colección.
Una tabla hash se usa cuando necesita acceder a elementos usando keyy puede identificar un valor clave útil. Cada elemento de la tabla hash tiene un par clave / valor. La clave se utiliza para acceder a los elementos de la colección.
Métodos y propiedades de la clase Hashtable
La siguiente tabla enumera algunos de los properties del Hashtable clase -
No Señor. | Descripción de propiedad |
---|---|
1 | Count Obtiene el número de pares de clave y valor contenidos en Hashtable. |
2 | IsFixedSize Obtiene un valor que indica si la tabla hash tiene un tamaño fijo. |
3 | IsReadOnly Obtiene un valor que indica si Hashtable es de solo lectura. |
4 | Item Obtiene o establece el valor asociado con la clave especificada. |
5 | Keys Obtiene un ICollection que contiene las claves en Hashtable. |
6 | Values Obtiene un ICollection que contiene los valores de Hashtable. |
La siguiente tabla enumera algunos de los methods del Hashtable clase -
No Señor. | Método y descripción |
---|---|
1 | public virtual void Add(object key, object value); Agrega un elemento con la clave y el valor especificados en Hashtable. |
2 | public virtual void Clear(); Elimina todos los elementos de Hashtable. |
3 | public virtual bool ContainsKey(object key); Determina si la tabla hash contiene una clave específica. |
4 | public virtual bool ContainsValue(object value); Determina si Hashtable contiene un valor específico. |
5 | public virtual void Remove(object key); Elimina el elemento con la clave especificada de Hashtable. |
Ejemplo
El siguiente ejemplo demuestra el concepto:
using System;
using System.Collections;
namespace CollectionsApplication {
class Program {
static void Main(string[] args) {
Hashtable ht = new Hashtable();
ht.Add("001", "Zara Ali");
ht.Add("002", "Abida Rehman");
ht.Add("003", "Joe Holzner");
ht.Add("004", "Mausam Benazir Nur");
ht.Add("005", "M. Amlan");
ht.Add("006", "M. Arif");
ht.Add("007", "Ritesh Saikia");
if (ht.ContainsValue("Nuha Ali")) {
Console.WriteLine("This student name is already in the list");
} else {
ht.Add("008", "Nuha Ali");
}
// Get a collection of the keys.
ICollection key = ht.Keys;
foreach (string k in key) {
Console.WriteLine(k + ": " + ht[k]);
}
Console.ReadKey();
}
}
}
Cuando se compila y ejecuta el código anterior, produce el siguiente resultado:
001: Zara Ali
002: Abida Rehman
003: Joe Holzner
004: Mausam Benazir Nur
005: M. Amlan
006: M. Arif
007: Ritesh Saikia
008: Nuha Ali