发布网友 发布时间:2022-04-22 03:04
共3个回答
热心网友 时间:2023-12-20 11:50
事实上肯定是LinkedList效率比较快,因为在内部是通过链表链接的,而ArrayList则是直接存取比较快一些,因为内部用的是下标索引。以下是在我电脑进行五次测试的结果,你多测试测试,结果肯定是LinkedList比较快
追问我试了好多次,还是相反的结果追答受你精神的刺激,刚才我狠狠谈久了一番,收获不小
首先不知道你学没学过数据结构,正如前面两位所言,链接表比顺序表遍历要快
但是在Java集合中,你使用了Iterator迭代器,迭代器模式为每个特定的数据结构提供了最好的遍历算法,因此你用ArrayList迭代比LinkedList快也不意外,这涉及到Java集合底层的细节,有空你可以研究研究。
而如果不用迭代器,在for循环中用List.get(下标)的方法,你会发现链表的遍历速度远远慢于ArrayList,这正充分说明了两种集合的特点
热心网友 时间:2023-12-20 11:50
因为你的 ArrayList 存放元素大小是固定的,并且在事先已经指定并开僻了指定数量的容量的数组空间,实际上只是对数组进行了操作。热心网友 时间:2023-12-20 11:50
个人觉得讨论这个意义不大