前几天公司新来了一位实习生,面试时的时候问了一个问题,什么问题呢,就是关于LinkedList中的add()方法,问他知不知道这个方法是怎么实现的,结果他支支吾吾了半天也没有说出一二三来,大家一起来看看我的理解。
- 首先LinkedList的存储原理
存储原理是一个链表,在元素的前后分别有一个前置结点和后置结点,用于连接集合中的上一个元素和下一个元素,依次“手拉手”,构成一条链式数据的集合。
LinkedList linkedList = new LinkedList();
linkedList.add("貂蝉");
我们去看看源码,分析我写在了图片里面。
看了这两张图片后我们应该大概有一些了解了
下面我们看看add()方法的源码
这时大家是不是有点豁然开朗了
那么大家再去分析分析addFirst(),和add()方法是类似的
我们倡导大家可以多去看看源码,这样对大家是有很多好处的,一些我们理解不了的东西,源码里面基本都有相对应的解释。