LinkedList有索引 为什么查找还会慢
LinkedList根据索引查找为什么慢_alexdedream的博客-CSDN博客
这是因为该索引非彼索引
查看源码可以知道 LinkedList根据索引进行的操作都是,每一次for循环增加一次索引变量,然后返回item,不断循环下找到数据
而非真的根据索引直接找到对应元素。
假如集合size=100,要取index=40的元素,根据源码,100>>1=50,40<50,需要从前往后循环,循环40遍取出node.item.
如果正好取中间那位或者排后面的,则从后往前循环,直到找到该元素,所以LinkedList查找数据很慢,核心原因是用了循环去寻找数据。