zoukankan      html  css  js  c++  java
  • Java集合类学习笔记(各种线性表性能分析)

    ArrayList、LinkedList是线性表的两种典型实现:基于数组的线性表和基于链的线性表。

    Queue代表了队列,Deque代表了双端队列。

    一般来说,由于数组以一块连续内存区来保存所有的数组元素,所以数组在随机访问时性能最好;

    而内部以链表作为底层实现的集合在执行插入、删除操作时有较好的性能。

    总体来说,ArrayList的性能比LinkedList性能要好,因此大部分时候都应该考虑ArrayList。

    关于使用List集合有如下建议:

    1. 如果需要遍历List集合元素,对于ArrayList、Vector集合,应该使用随机访问方法(get)来遍历性能更好; 对于LinkedList集合,应该采用迭代器(Iterator)来遍历集合元素。
    2. 如果要经常改变包含大量数据的List集合,应该使用LinkedList集合。因为使用ArrayList、Vector集合可能需要经常重新分配内存。
    3. 如果有多个线程需要同时访问List集合中的元素,可以考虑使用Collections将集合包装成线程安全的集合。
  • 相关阅读:
    序列操作
    上帝造题的七分钟2 / 花神游历各国
    火柴排队
    pair(对组)用法
    线段树
    链上分治
    Rem与Px的转换
    css中单位px和em,rem的区别
    css网页自适应-1
    css网页自适应-2
  • 原文地址:https://www.cnblogs.com/microyum/p/5388034.html
Copyright © 2011-2022 走看看