Maison >Java >javaDidacticiel >Comment afficher les éléments d'une table de hachage en Java par énumération ?
Une Hashtable est une puissante structure de données en Java qui permet aux programmeurs de stocker et d'organiser des données sous la forme de paires clé-valeur. De nombreuses applications nécessitent de récupérer et d'afficher les entrées d'une table de hachage.
Dans une table de hachage, tout objet non vide peut être utilisé comme clé ou valeur. Cependant, pour réussir à stocker et récupérer des éléments dans une table de hachage, l'objet utilisé comme clé doit implémenter la méthode equals() et la méthode hashCode(). Ces implémentations garantissent l'exactitude des comparaisons clés et du hachage, permettant une gestion et une récupération efficaces des données dans les tables de hachage.
Grâce à l'utilisation des méthodes keys() et elements() dans la Hashtable, nous accédons aux Enumeration objets contenant les clés et les valeurs.
En utilisant des méthodes d'énumération telles que hasMoreElements() et nextElement(), nous pouvons récupérer efficacement toutes les clés et valeurs associées à une table de hachage et les obtenir sous forme d'objets d'énumération. Cette approche permet une traversée et une extraction transparentes des données dans la table de hachage
Avantages de l'utilisation des énumérations :
Efficacité : Lorsque vous utilisez d'anciennes classes de collection comme Hashtable, l'énumération est légère et efficace car elle ne repose pas sur des itérateurs.
Thread Safety : L'énumération est une interface en lecture seule, contrairement aux itérateurs, ce qui la rend thread-safe et constitue un bon choix dans un environnement multithread.
Passons maintenant à quelques exemples pour illustrer comment utiliser Enumeration pour obtenir des éléments de Hashtable.
La traduction chinoise deimport java.io.*; import java.util.Enumeration; import java.util.Hashtable; public class App { public static void main(String[] args) { // we will firstly create a empty hashtable Hashtable<Integer, String> empInfo = new Hashtable<Integer, String>(); // now we will insert employees data into the hashtable //where empId would be acting as key and name will be the value empInfo.put(87, "Hari"); empInfo.put(84, "Vamsi"); empInfo.put(72, "Rohith"); // now let's create enumeration object //to get the elements which means employee names Enumeration<String> empNames = empInfo.elements(); System.out.println("Employee Names"); System.out.println("=============="); // now we will print all the employee names using hasMoreElements() method while (empNames.hasMoreElements()) { System.out.println(empNames.nextElement()); } } }
Employee Names ============== Hari Vamsi Rohith
Dans l'exemple précédent, nous avons simplement affiché le nom de l'employé, nous allons maintenant afficher l'identifiant et le nom de l'employé.
import java.io.*; import java.util.Enumeration; import java.util.Hashtable; public class App { public static void main(String[] args) { // we will firstly create a empty hashtable Hashtable<Integer, String> empInfo = new Hashtable<Integer, String>(); // now we will insert employees data into the hashtable //where empId would be acting as key and name will be the value empInfo.put(87, "Hari"); empInfo.put(84, "Vamsi"); empInfo.put(72, "Rohith"); // now let's create enumeration objects // to store the keys Enumeration<Integer> empIDs = empInfo.keys(); System.out.println("EmpId" + " \t"+ "EmpName"); System.out.println("================"); // now we will print all the employee details // where key is empId and with the help of get() we will get corresponding // value which will be empName while (empIDs.hasMoreElements()) { int key = empIDs.nextElement(); System.out.println( " "+ key + " \t" + empInfo.get(key)); } } }
EmpId EmpName ================ 87 Hari 84 Vamsi 72 Rohith
Dans cet article, nous avons discuté des concepts de Hashtable et d'Enumeration et de leurs avantages, et nous avons également vu plusieurs exemples de la façon d'obtenir des éléments de Hashtable en utilisant cette Enumeration.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!