Set:元素搜索效率低下,删除和插入效率较高,元素位置不因插入和删除而改变。List:与数组一样,List动态增加,元素搜索效率高,其他元素位置变化,因此插入删除效率低。
基本原理: ArrayList基本原理为动态数组
区别可以从基础上实现原理分析:
区别在于,ArrayList查找元素和修改元素比链接列表快,而链接列表插入和删除元素比链接列表快。 链接列表通常比阵列列表消耗更多的内存。 因为链接列表的节点不仅包含数据,还包含前一个元素和后一个元素这两个引用。 相同点:两者都实现了List接口,不希望像数组一样在定义长度时固定。