学习java集合之后的简易总结

java中的集合分为value,kay-value两种。

value:List(有序、可以重复)、Set(无序、不可以重复)

key-value:Map

List常用的ArrayList和LinkedList的区别和常用场景

         ArrayList底层实现是数组,而LinkedList底层实现是链表。

         数组查询具有查询特定元素比较快,而插入、修改、删除比较慢(数组在内存中是一块连续的内存,插入删除是需要移动内存的)

         链表不要求内存是连续的,在当前元素中存放下一个或上一个元素的地址。查询时需要从头部开始,一个一个的找,所以查询效率低。但由于插入时不需要移动内存,只需要改变引用指向即可,所以插入或者珊瑚的效率高。

          ArrayList使用在查询比较多,但是插入和删除比较少的情况,而LinkedList使用在查询比较少而插入和删除比较多的情况。

Map中HashMap和HashTable的区别

          相同点:HashMao和HashTable都可以用来存储kay-value的数据

          不同点:(1)HashMap可以把null作为kay或value,而HashTable是不可以的

                        (2)HashMap是线程不安全的,但是效率高,而HashTable是线程安全的,但是效率低。









猜你喜欢

转载自blog.csdn.net/jee0520/article/details/80789948