- 博客(3)
- 收藏
- 关注
原创 面试题:Fail-fast和Fail-safe的区别(源码分析)
前言:我们都知道迭代器是用来遍历集合的,比如List和Set。那么在考虑多线程之后我们需要思考这么个问题,在我们遍历这个集合的时候,该集合是否允许其他人或者其它线程同时去访问遍历该集合呢,如果允许的话万一遍历的时候该集合被修改了该怎么办呢;要是不允许又是怎样的一个机制呢,这就牵扯出了两种策略:Fail-fast和Fail-safe。我们先来看一下这两种策略的说明:Fail-fast:不允许同时遍历修改,一旦发现遍历的同时其它人来修改的话,会立刻抛出异常。Fail-safe:允许同时遍历修改,但相
2022-03-17 18:09:32
928
原创 面试题:ArrayList和Linklist的区别(多角度来描述)
在我们初学的时候,总是把这两个有以下的定义:ArrayList底层是数组,增删慢,查找快。LinkedList底层是双向链表,增删快,查找慢。可具体情况真的是这样吗,或者换句话说这样子描述真的准确么,其实不然,本篇文章将会带你仔细探讨二者的区别。首先我们先来准确说一下两者的具体特点,然后再逐一分析:ArrayList:1.基于数组,需要连续内存2. 随机访问快(可以根据下标访问)3.尾部插入和删除性能可以,其他的头部中间插入删除慢(数组扩容的问题因为次数不多影响不大所以不考.
2022-03-14 18:02:34
4899
5
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人