在咱們正式分析Map的源代碼前,咱們首先閱讀下這篇關於Map的簡介數據結構
http://www.jb51.net/article/32652.htm.net
簡單來講,Map分爲兩種一種是有序的,一種是無序的。code
咱們用的較多的爲無序的,即:Hashmap。其實現的原理爲哈希值(hashcode)。htm
而關於有序的實現,爲TreeMap,其實現的原理爲紅黑樹。排序
在以上的連接中,建議「HashMap一般比TreeMap快一點(樹和哈希表的數據結構使然),建議多使用HashMap,在須要排序的Map時候才用TreeMap」get
HashMap和TreeMap會分爲兩篇文章講解:hash
HashMap:原理
TreeMap:map