JAVA中的集合

1、java中的集合分为value、key---value(conllection map)两种

2、存储值分别有List和Set

  list是有序打的,可以重复的

  set是无序的,不可以重复的,根据equals和hashcode判断,也就是如果一个对象要存储在set中,必须重写equals和hashcode

  存储key-value 的为map

3、ArrayList和LinkedList  区别

arraylist底层使用的数组,linkedlist底层使用的是链表

数组查询具有所有查询特定元素比较快,而插入或删除时比较慢(数组在内存中是一块连续的内存,插入或删除时会移动内存)

链表不要求连续的内存,当前元素存放上一个或下一个元素的地址,查询时需要从头部开始,一个一个的找,所以查询效率低,插入时不需要移动内存

,只需改变引用指向即可,所以插入或删除效率高

ArrayList使用在查询多,插入或查询少的场景

LinkedList使用在插入或删除多,查询少的场景中