4.23Java vector向量

Vector向量的概念

Vector底层用数组实现List

特点:

  • 相关的方法都加了同步检查

  • "线程安全、效率低"

Vector底层源码:

public synchronized int indexOf(Object o, int index){
    //代码
}
//synchronized方法会做同步检查,需要持有锁才能进行

选择使用方法:---安全往往意味着效率低

  1. 需要线程安全时,用Vector---容器对象多线程共享的时候要用Vector

  2. 不存在线程安全问题,查找较多用ArrayList(一般使用它)---线程不安全

  3. 不存在线程安全问题,增加或删除元素较多用LinkList

实例:

package com.MyCollection;

import java.util.List;
import java.util.Vector;

/**
 * 测试Vector
 * @author Lucifer
 */
public class TestVector {
    public static void main(String[] args) {
        List<String> a = new Vector<>();
    }
}