Node节点类,item代表节点储存的值,next代表本节点的下一个节点,prev代表本节点的上一个节点,里面有个构造方法,通过调用此构造方法给节点赋值。
LinkedList类的局部变量,有三个参数,分别代表上一个,下一个和节点个数
add方法,调用了linkLast方法,进入该方法:
定义了一个节点类型的参数l,并把last赋值给他,新建了一个节点类型的参数,并调用node构造方法
插入“a”:
插入“b”:
注意:随着新节点的插入过程,last和first分别一直指向双向链表的头结点和尾节点,但是在第一次添加节点时,只有一个节点,所以last和first指向同一个节点
以此类推的向链表尾部插入元素。
向任意位置添加元素:
小算法:查找过程先对index位置进行判断,如果靠前半部分,就从前往后遍历,反之从后往前遍历。
ok,这就是基本加入元素的java底层的源代码