java中的List接口 中有两个实现类:ArrayList和LinkedList。前者是使用数组实现,用索引来取数据是它的优势。后者是用双向链表实现,在插入和删除操作上占优势。具体实现已经封装好了,不用操心过多,具体动作都有具体的方法。
java的LinkedList类很呆板?当然呆板,但他能适用于大部分场景就够了链表有什么用?这个跟java没啥关系,很多语言都能实现链表功能,java只是封装了一个LinkedList类而已其实他就是一个元素里包含了下一个或上一个元素或者两者的指针,所以他插入元素速度很快,因为他只需要改上下两个元素,如果是ArrayList的话,那就得重新移动大部分元素.明白?
链表就是一个容器, 用来放各种数据和对象的, 类比生活中, 你家的母鸡下了很多蛋,你总得找个地方放鸡蛋吧,可以根据自己的需要放在篮子中或坛子中;而在java编程中 , 各种数据和对象就相当于鸡蛋, list就相当于 篮子或坛子
LZ去学学数据结构吧 java虽然封装了链表结构 但是很多时候 不够灵活 还是自己写 比较好 链表的好处就是 在只是做遍历的结构中 他能快速插入 删除 缺点是在不是只做遍历的结构中 要访问 链表中某一个元素 是很慢的 因为他需要从链表头 一直查询到某个元素 所以链表是用来做遍历的 还有一个好处 是链表是有序的 程序员的基础是算法和数据结构 以后这些东西好好学学 不要被java c# 这些便利的封装结构(很多时候是臃肿 呆板的) 蒙蔽双眼 都不知道主次 本末倒置了