zoukankan      html  css  js  c++  java
  • Collection Vector&Stack

    一、 源码分析(同ArrayList实现,增删查加锁)

    二、 与ArrayList区别

         1.  Vector与ArrayList一样,也是通过数组实现的,不同的是它支持线程的同步,即某一时刻只有一个线程能够写Vector,避免多线程同时写而引起的不一致性,但实现同步需要很高的花费,因此,访问它比访问ArrayList慢。

         2.  Vector是线程(Thread)同步(Synchronized)的,所以它也是线程安全的,而Arraylist是线程异步(ASynchronized)的,是不安全的。如果不考虑到线程的安全因素,一般用Arraylist效率比较高。

         3. 如果集合中的元素的数目大于目前集合数组的长度时,vector增长率为目前数组长度的100%,而arraylist增长率为目前数组长度
    的50%.如过在集合中使用数据量比较大的数据,用vector有一定的优势。

    三、Stack

         1. 继承Vetor数据结构.(数组最后一个为栈顶元素)

         2. Stack是一个后进先出(last in first out,LIFO)的堆栈,在Vector类的基础上扩展5个方法而来

            Deque(双端队列)比起Stack具有更好的完整性和一致性,应该被优先使用

       

       

    齊帥
  • 相关阅读:
    工业互联网兴起
    互联网经济学
    广泛应用的区块链技术
    工业互联网数据传输探讨
    谈谈网站性能
    深入探讨vue响应式原理
    工业互联网虚拟数字
    对www.518shengmao.com站资源打包,采用vue Node.js
    jquery的事件命名空间详解
    巧用索引与变量
  • 原文地址:https://www.cnblogs.com/qishuai/p/9052957.html
Copyright © 2011-2022 走看看