Java集合框架
爱敲代码的程序媛
爱敲代码的程序媛
展开
-
ConcurrentHashMap和HashTable的区别
ConcurrentHashMap和HashTable的区别底层数据结构:ConcurrentHashMap在JDK1.7时,底层采用分段数组+链表形式;JDK1.8以后和HashMap一样采用数组+链表/红黑二叉树,HashTable和JDK1.8以前的HashMap一样的底层数据结构:数组+链表,数组是HashMap的主体,链表是为了解决哈希冲突问题;实现线程安全方式:1、在JDK1.7...原创 2020-02-05 18:46:29 · 181 阅读 · 0 评论 -
HashMap和HashSet的区别
HashMap和HashSet的区别HashSet底层是基于HashMap实现的,HashSet中实现了clone()、writeObject()、readObject()方法,其余方法调用的是HashMap的方法;HashMap:1、实现的是Map接口;2、存储的Key-Value对;3、通过判断Key的HashCode值相等和equals()方法返回true来决定对象相等;4、使用...原创 2020-02-05 17:35:13 · 157 阅读 · 0 评论 -
HashMap和Hashtable的区别
HashMap和Hashtable的区别Map中保存的是具有映射关系的数据,因此Map集合中保存两组值,一组用于保存Map里的Key,另一组用于保存Map里的Value,Key和Value中的值可以是任何引用类型的数据,Map中的Key相当于一个Set集合(所有Key没有顺序,Key与Key之间不可以重复),可以使用KeySet()方法,用于返回Map里所有Key组成的Set集合;Map中的Va...原创 2020-02-05 12:58:38 · 103 阅读 · 0 评论 -
ArrayList和LinkedList异同
ArrayList和LinkedList异同1、是否保证线程安全:ArrayList和LinkedList都不是同步的,当多个线程访问到同一个ArrayList集合时,如果有超过一个线程修改了ArrayList集合,则必须手动保证该集合的同步性;所以都不保证线程安全;2、底层数据结构:ArrayList底层使用的是Object数组结构,LinkedList底层使用的是双向链表数据结构;3、插...原创 2020-02-04 18:15:02 · 340 阅读 · 0 评论