在咱们正式分析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