第1个回答 2017-08-14
HashMap,TreeMap,HashTable,ConcurrentHashMap
HashMap用的比较多.通过KEY的hashcode确定key.内部是无序的,线程非安全.平时写代码用这个就足够了.如果需要有序的画有一个LinkedHashMap,这个只比HashMap多了个有序
TreeMap就是按树来构建的..既然是树选一种遍历方式就是有序的了.同样线程不安全.
HashTable跟HashMap差不多..但是是线程安全的..主要用在多线程程序中的临界区数据类型..
原理:里面有一个bucket,用来存储键对象和值对象.有一个Entry,构建了一个Entry对象的链表,可以通过getEntrySet来获取.方法主要就是算这个key对象的散列码(hashCode)确定key值,再在Entry中寻找看看有没有这个Key值,然后设置Value..
拙见.不足之处请各路大神指正..
二〇一七年八月十四日 15:48:58