这个几个对象都是存放键值对的存储结构,最简单的理解它们从key是否可为NULL,输出的是否按顺序?是正序还是逆序?等等方面思考就可以了
1)关于key:
key可以为null: HashMap 、 LindedHashMap
key不能为null: Hashtable 、TreeTable
2) 关于输出顺序
有序:LinkedHashMap(正序)、Hashtable(逆序) 、TreeMap(正序)
无序:HashMap(随机)
3)ketSet()和entrySet()方法区别
本人做个试验,将1000条记录分别放在连个HashMap对象中,
用ketSet()迭代出来用了78毫秒
用entrySet()迭代出来用了16毫秒
所以建议使用entrySet() ,它迭代出来的每个对象就是一个完整的键值对象,可以用 Entry e的,e.getKey()和e,getValue()方法取得键或值。