List常用的ArrayList和LinkedList
ArrayList:底层使用的是数组,具有索引,查询特定的元素比较快,而插入和删除元素或者修改比较慢。(数组在内存中是一块连续的内存,如果插入或者删除时,需要移动内存)
LinkedList:底层使用的是链表(链表是不要求内存是连续的,在当前元素存放着上一个或者下一个元素的地址。查询时从头部开始一个一个的找,所以效率比较低,插入时,不需要移动内存,只改变引用的指向即可,所以插入和删除效率比较高)
所以ArrayList使用在查询比较多,插入和删除比较少的情况,而LinkedList使用在查询比较少,而插入和删除比较多的情况
网友评论