论坛首页 入门技术论坛

corejava辅导(8--3)

浏览 1090 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2008-12-03  

HashMap,是Map接口的实现类,Key时无序存放的,其中Key是不可以重复的,它也是通过Hash码值来保证Key不重复的,Keyvalue是一一对应的。如果要加入的键值对和HashMap中键值对的Key是相同的就会将这个集合中的Key所队应的value值进行覆盖,在使用自定义类型作为Key时,那就是要覆盖hashCode(),equals()方法,也就是和HashSet中要放入自定义类型是的处理方法相同。这个类的对象是线程不安全的。

 

在遍历Map时,要使用其keySet()方法获得Key的一个Set集合,可以通过遍历这个Set,用get()方法来获得Key所对应的value,也就遍历了Map

 

Hashtable,也是Map接口的实现类,他和HashMap比较相似,只不过这个类对象是重量级的,是线程安全的。他不允许Keyvaluenull

 

Properties,这个类是Hashtable的子类,他的Keyvalue只能是字符串String类型。

 

SortedMapMap子接口

 

TreeMap,是SortedMap的实现类,他会按照Key进行排序。和TreeSet类一样,在使用自定义类作Key时,要用自定义类实现Comparable接口。

 

注意:其实HashSet底层就是一个HashMap,只不过其中的value值都是null值,而HashMap的底层是用数组实现的。

 

完整的集合框架

 

Collection接口 

       List接口 

               ArratList

               LinkedList

       Set接口 

               SortedSet接口

                    TreeSet

               HashSet

               LinkedSet

 

 

 

 

         Map接口

             SortedMap接口

                   TreeMap

             HashMap 

             Hashtable

                   Properties

论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics