一个Hashtable是Java中一种强大的数据结构,允许程序员以键值对的形式存储和组织数据。许多应用程序需要从Hashtable中检索和显示条目。
在Hashtable中,任何非空对象都可以作为键或值。然而,为了成功地存储和检索Hashtable中的项,用作键的对象必须实现equals()方法和hashCode()方法。这些实现确保了键的比较和哈希处理的正确性,从而实现了Hashtable中数据的高效管理和检索。
Through the utilization of the keys() and elements() methods in the Hashtable, we gain access to Enumeration objects containing the keys and values.
通过使用枚举方法,如hasMoreElements()和nextElement(),我们可以有效地检索与Hashtable关联的所有键和值,并将它们作为枚举对象获取。这种方法允许无缝遍历和提取Hashtable中的数据
使用枚举的优点:
效率:当使用旧的集合类(如Hashtable)时,枚举是轻量且高效的,因为它不依赖于迭代器。
线程安全性:枚举是一个只读接口,与迭代器不同,它使其具有线程安全性,并且在多线程环境中是一个很好的选择
现在让我们通过一些例子来说明如何使用Enumeration从Hashtable中获取元素。
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 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
在之前的例子中,我们只是显示了员工的姓名,现在我们将显示员工的ID和姓名。
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
在本文中,我们讨论了Hashtable和Enumeration的概念及其优势,并且我们还看到了如何使用这个Enumeration从Hashtable中获取元素的几个示例。
以上是如何使用枚举在Java中显示Hashtable的元素?的详细内容。更多信息请关注PHP中文网其他相关文章!