`
周英能
  • 浏览: 188000 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

ArrayList对比Vector

 
阅读更多

主要区别就是ArrayList是非线程同步的,而Vector是线程同步的


AyyayList的构造函数有三个:

public ArrayList()

构造一个初始容量为 10 的空列表


  public ArrayList(Collection<? extends E> c)

构造一个包含指定 collection 的元素的列表,这些元素是按照该 collection 的迭代器返回它们的顺序排列的。 


public ArrayList(int initialCapacity)

构造一个具有指定初始容量的空列表。 


Vector:

 

       每个向量会试图通过维护 capacitycapacityIncrement 来优化存储管理。capacity 始终至少应与向量的大小相等;这个值通常比后者大些,因为随着将组件添加到向量中,其存储将按 capacityIncrement 的大小增加存储块。应用程序可以在插入大量组件前增加向量的容量;这样就减少了增加的重分配的量。  默认增长数量是容量的2倍,而ArrayList中固定为(oldCapacity * 3)/2 + 1,在Vector中可以通过构造函数改变重新分配的数量

public Vector()

构造一个空向量,使其内部数据数组的大小为 10,其标准容量增量为零。 

 

 

public Vector(Collection<? extends E> c)

构造一个包含指定 collection 中的元素的向量,这些元素按其 collection 的迭代器返回元素的顺序排列

 

 

public Vector(int initialCapacity,
              int capacityIncrement)
使用指定的初始容量和容量增量构造一个空的向量
public Vector(int initialCapacity)
使用指定的初始容量和等于零的容量增量构造一个空向量。


 

 

 

 

 

分享到:
评论

相关推荐

    ArrayList LinkedList Vector性能对比

    ArrayList、LinkedList和Vector是三种常见的动态数组实现,它们各自有特定的特性和使用场景。这里我们将深入探讨这三个类的性能对比,以及它们在不同操作下的表现。 ArrayList是基于动态数组实现的,它提供了随机...

    Java中ArrayList的使用方法以及与vector的对比

    Java 中 ArrayList 的使用方法以及与 Vector 的对比 ArrayList 是 Java 中的一种动态数组,它提供了很多有用的特性,例如动态地增加和减少元素,实现了 ICollection 和 IList 接口,灵活的设置数组的大小等。下面...

    第8讲 对比Vector、ArrayList、LinkedList有何区别1

    在Java集合框架中,Vector、ArrayList和LinkedList都是List接口的实现,它们提供了有序集合的功能,允许根据位置进行元素的添加、删除和查找。然而,它们在设计和性能上有着显著的区别。 首先,Vector是Java早期...

    对比Vector、ArrayList、LinkedList1

    在Java集合框架中,Vector、ArrayList和LinkedList是三种常见的List接口实现类,它们各自具有不同的特点和适用场景。下面我们将详细对比这三个类的区别。 1. **Vector** - **线程安全**:Vector是线程安全的,因为...

    比较ArrayList、LinkedList、Vector1

    【ArrayList、LinkedList、Vector对比分析】 1. **List概述** List接口是Java集合框架中的重要组成部分,它是一个有序的集合,允许重复元素,并且保持插入顺序。List接口的实现类主要有ArrayList、LinkedList和...

    Java中的ArrayList的底层源码解读、LinkedList、Vector的区别介绍

    相关参数的深度解析,从是什么,为什么,怎么做三个角度进行讲解,用通俗易懂的白话进行介绍,LinkedList和Vector以及ArrayList的区别以及使用场景,时间复杂度的介绍,相关数据结构的介绍和对比,LinkedList的折半...

    集合框架面试题.pdf

    而ArrayList、Vector、LinkedList是实现List接口的一些类,它们用于存储有序的、可重复的元素集合。在面试中,了解这些集合类的特性和区别是相当重要的,以下是集合框架中关于ArrayList和Vector的关键知识点。 首先...

    Collection 详细案例,集合的详细例子,list例子和详细解析,map详细例子和详细解析,set详细列子和详细解析,

    案例会对比ArrayList和Vector的使用,以及如何在需要线程安全时选择Vector。 Map接口是键值对的集合,最常用的实现包括HashMap、TreeMap等。案例中会详细介绍Map的使用,如创建Map,插入键值对,获取键或值,以及...

    java面试精选72题

    ArrayList和Vector都是基于数组的,Vector是线程安全的,而ArrayList不是。LinkedList基于双向链表,其插入和删除操作速度快,但在按索引访问元素时比ArrayList和Vector慢。 5. Collection和Collections的区别。...

    Java 最常见的 208 道面试题:第二模块答案

    **ArrayList 和 Vector 的对比**: - **线程安全**:Vector 是线程安全的,ArrayList 不是。 - **性能**:ArrayList 比 Vector 快,因为 Vector 的所有操作都是同步的,这会影响性能。 - **功能**:ArrayList 更通用...

    ArrayList.docx

    - 使用线程安全的`Vector`替代`ArrayList`。 - 通过`Collections.synchronizedList()`方法将`ArrayList`转换为线程安全的版本。 - 使用`CopyOnWriteArrayList`,它采用写时复制策略,读操作时不加锁,写操作时才...

    Java 集合类面试题.docx

    2. **ArrayList 与 Vector 的对比** - **ArrayList** 是非线程安全的,适用于单线程环境,它的容量增长策略通常是原来容量的50%。 - **Vector** 是线程安全的,每个操作都进行了同步处理,因此在多线程环境下更...

    Java中的vector类使用方法示例详解

    8. Vector和ArrayList的对比: Vector是线程安全的,它的所有方法都是同步的,因此在多线程环境下使用时,Vector可以保证数据的一致性,但这也使得Vector在单线程环境下性能低于ArrayList。ArrayList每次扩容为原...

    Java程序员面试宝典

    集合框架也是面试的热点,ArrayList和Vector都是基于数组实现的列表,但ArrayList是非同步的,而Vector是同步的,因此在多线程环境下,Vector的性能较差。LinkedList使用链表结构,虽然索引元素不如ArrayList和...

    java 面 试 宝 典,葵 花 宝 典

    - **ArrayList和Vector**:两者基于数组实现,支持按索引访问,但插入和删除操作相对较慢。Vector是线程安全的,性能略低于ArrayList。 - **LinkedList**:基于双向链表,插入和删除操作速度快,但按索引访问较慢...

    JAVA极品面试题,不下载一定会后悔的!快来下载吧。

    7. **ArrayList、Vector与LinkedList**:ArrayList和Vector基于数组实现,索引访问速度快,但插入和删除慢,线程安全方面Vector进行了同步处理。LinkedList使用链表结构,插入和删除速度快,但索引访问慢,适合需要...

    葵花宝典之javajava笔试

    【标题】:“葵花宝典之javajava笔试”揭示了Java编程的核心概念,包括面向对象的特性、数据类型的差异、循环控制关键字的区别以及集合框架中的ArrayList、Vector和LinkedList的性能对比,还有HashMap与Hashtable...

    03-Java集合-泛型面试题(24题)-新增.pdf

    本文将从Java集合和泛型两个方面对知识点进行详细的讲解,并对ArrayList、LinkedList、HashMap、HashTable等数据结构进行对比分析。 ArrayList和LinkedList的区别 ArrayList和LinkedList都是List接口的实现类,但...

    javaAPI学习总结

    示例代码展示了如何使用ArrayList和Iterator实现与Vector相同的功能,即接收用户输入的数字序列并求和。`add()`方法用于将数字添加到ArrayList中,然后通过Iterator遍历并计算总和。 四、对比与选择 - 当需要线程...

Global site tag (gtag.js) - Google Analytics