更新时间:2019-08-04 09:00:00 来源:极悦 浏览2401次
1、java中哪一个 List 实现了快插入?
LinkedList 和 ArrayList 是另个不同变量列表的实现。
ArrayList 的优势在于动态的增长数组,非常适合初始时总长度未知的情况下使用。
LinkedList 的优势在于在中间位置插入和删除操作,速度是快的。
LinkedList 实现了 List 接口,允许 null 元素。
此外 LinkedList 提供额外的 get,remove,insert 方法在 LinkedList 的首部或尾部。
这些操作使 LinkedList 可被用作堆栈 (stack),队列 (queue) 或双向队列 (deque)。
ArrayList 实现了可变大小的数组。它允许所有元素,包括 null。
每个 ArrayList 实例都有一个容量(Capacity),即用于存储元素的数组的大小。
这个容量可随着不断添加新元素而自动增加,但是增长算法并没有定义。
当需要插入大量元素时,在插入前可以调用 ensureCapacity 方法来增加 ArrayList 的容量以提高插入效率。
2、什么时候使用 ConcurrentHashMap?
ConcurrentHashMap 被作为故障安全迭代器的一个实例,它允许完整的并发检索和更新。
当有大量的并发更新时,ConcurrentHashMap 此时可以被使用。
这非常类似于 Hashtable,但 ConcurrentHashMap 不锁定整个表来提供并发,所以从这点上 ConcurrentHashMap 的性能似乎更好一些。
所以当有大量更新时 ConcurrentHashMap 应该被使用。
Java企业面试题“java中哪一个 List 实现了快插入?”;“什么时候使用 ConcurrentHashMap?”希望对面试的小伙伴有所帮助,更多精彩内容请关注极悦java学院。
0基础 0学费 15天面授
Java就业班有基础 直达就业
业余时间 高薪转行
Java在职加薪班工作1~3年,加薪神器
工作3~5年,晋升架构
提交申请后,顾问老师会电话与您沟通安排学习