程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> 關於JAVA >> JAVA提高教程(13)-認識Map之Hashtable

JAVA提高教程(13)-認識Map之Hashtable

編輯:關於JAVA

這個類,在使用上和HashMap的區別不大,其方法都是同步的(Synchronized).

1.package collection.lession13;
2.
3.import java.util.Hashtable;
4.
5./**
6. * 老紫竹JAVA提高教程(13)-認識Map之Hashtable<br>
7. * 這個類繼承自一個已經過期不推薦使用的Dictionary類<br>
8. * 目前均推薦實現Map接口<br>
9. *
10. *
11. * @author 老紫竹 JAVA世紀網(java2000.net)
12. *
13. */
14.public class Lession13Hashtable {
15.
16. public static void main(String[] args) {
17.
18. // Hashtable的默認容量為11 ,從源代碼可以清楚的看到
19. // public Hashtable() {
20. // this(11, 0.75f);
21. // }
22. // 而 HashMap的默認容量為16
23. // 他們的加載因子都是0.75
24. Hashtable ht = new Hashtable();
25.
26. // 我們先測試一下是否允許key為null;
27. try {
28. ht.put(null, "測試null的鍵");
29. System.out.println("OK! Hashtable 允許key為null");
30. } catch (NullPointerException ex) {
31. System.out.println("ERROR! Hashtable 不允許key為null");
32. }
33.
34. // 我們再先測試一下是否允許value為null;
35. try {
36. ht.put("測試null的值", null);
37. System.out.println("OK! Hashtable 允許value為null");
38. } catch (NullPointerException ex) {
39. System.out.println("ERROR! Hashtable 不允許value為null");
40. }
41.
42. // 從測試接口可以看到,Hashtable不允許key或者value為null
43. // 其它的操作,和HashMap區別不大,就不再多寫了。
44.
45. }
46.}
47.

總結:

如果你前面熟悉了HashMap,那麼你可以簡單的把Hashtable看成不允許null的同步的HashMap就行了。

內部雖然有一些不同,但對於普通的使用來說,影響不大,可以忽略。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved