Java快速掌握Vector类方法

 更新时间:2022年03月04日 15:51:25   作者:笑霸final  
Vector 类实现了一个动态数组。和 ArrayList 很相似,但是两者是不同的:Vector 是同步访问的;Vector 包含了许多传统的方法,这些方法不属于集合框架

Vector的基本介绍

1.:Vector类的定义:

public class Vector<E>
    extends AbstractList<E>
    implements List<E>, RandomAccess, Cloneable, java.io.Serializable

2:底层也是一个对象数组

protected Object[] elementData;

3:Vector是线程同步的,即线程安全,Vector类带有操作方法有synchronized

4:在开发中,需要线程安全时,考虑Vector

Vector 类支持 4 种构造方法

1 第一种构造方法创建一个默认的向量,默认大小为 10:

public Vector() {
        this(10);
    }

第二种构造方法创建指定大小的向量。

public Vector(int initialCapacity) {
        this(initialCapacity, 0);
    }

第三种构造方法创建指定大小的向量,并且增量用 capacityIncrement 指定。增量表示向量每次增加的元素数目。

/**
     * Constructs an empty vector with the specified initial capacity and
     * capacity increment.
     *
     * @param   initialCapacity     the initial capacity of the vector
     * @param   capacityIncrement   the amount by which the capacity is
     *  increased when the vector overflows向量溢出时容量增加的量 
     * @throws IllegalArgumentException if the specified initial capacity
     *         is negative
     */
public Vector(int initialCapacity, int capacityIncrement) {
        super();
        if (initialCapacity < 0)
            throw new IllegalArgumentException("Illegal Capacity: "+
                                               initialCapacity);
        this.elementData = new Object[initialCapacity];
        this.capacityIncrement = capacityIncrement;
    }

第四种构造方法创建一个包含集合 c 元素的向量:

public Vector(Collection<? extends E> c) {
        elementData = c.toArray();
        elementCount = elementData.length;
        // c.toArray might (incorrectly) not return Object[] (see 6260652)
        if (elementData.getClass() != Object[].class)
            elementData = Arrays.copyOf(elementData, elementCount, Object[].class);
    }

一些常用的方法

1.add方法

注意:add可以存入一个null;详见size放法


1.将指定元素添加到此向量的末尾。
boolean add(Object o)
2.在此向量的指定位置插入指定的元素。
void add(int index, Object element)
3.将指定 Collection 中的所有元素添加到此向量的末尾,
按照指定 collection 的迭代器所返回的顺序添加这些元素。
boolean addAll(Collection c)
4.在指定位置将指定 Collection 中的所有元素插入到此向量中。
boolean addAll(int index, Collection c)

2.remove方法

1.移除此向量中指定位置的元素。
Object remove(int index)
2.移除此向量中指定元素的第一个匹配项,如果向量不包含该元素,
则元素保持不变。
boolean remove(Object o)
3.从此向量中移除包含在指定 Collection 中的所有元素。
boolean removeAll(Collection c)

3.set方法

1.用指定的元素替换此向量中指定位置处的元素。
Object set(int index, Object element)
2.将此向量指定 index 处的组件设置为指定的对象
void setElementAt(Object obj, int index)

4.size、capacity、get方法

size返回此向量中的组件数(就是向量存是对象的数量)。

capacity 返回此向量的当前容量。

get 返回第几个的内容

int size();
int capacity();
Object get(int index);

代码

import java.util.Vector;

/**
 * @autor 笑霸fianl~
 * 欢迎访问GitHub:https://github.com/XBfinal
 * 欢迎访问Gitee:https://gitee.com/XBfianl
 * 欢迎访问CSDN:https://blog.csdn.net/weixin_52062043
 */
public class enumeration01 {
    public static void main(String[] args) {
        Vector vector = new Vector();
        for(int i=0;i<10;i++){
            vector.add(i);
        }
        for(int i=0;i<10;i++){
            System.out.print(vector.get(i)+"\t");
        }
        vector.add(null);//可以存一个null
        System.out.println("\n"+"组件数="+vector.size());
        System.out.println("容量="+vector.capacity());
    }
}

到此这篇关于Java快速掌握Vector类方法的文章就介绍到这了,更多相关Java Vector内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • springboot利用AOP完成日志统计的详细步骤

    springboot利用AOP完成日志统计的详细步骤

    项目用到了过滤器,可能有的人会不理解,之所以用过滤器是因为想要在日志记录post请求的json数据。本文重点给大家介绍springboot利用AOP完成日志统计的详细步骤,感兴趣的朋友跟随小编一起看看吧
    2021-12-12
  • java开发validate方法中校验工具类详解

    java开发validate方法中校验工具类详解

    这篇文章主要为大家介绍了java开发validate方法中校验工具类详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 深入探索Java常量池

    深入探索Java常量池

    这篇文章主要介绍了深入探索Java常量池,涉及静态常量池和运行时常量池的介绍,常量池的好处,8种基本数据类型的包装类和常量池等相关内容,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • 一篇文章带你入门Java修饰符

    一篇文章带你入门Java修饰符

    Java语言提供了很多修饰符,主要分为以下两类:访问修饰符;非访问修饰符。修饰符用来定义类、方法或者变量,通常放在语句的最前端。我们通过下面的例子来说明,下面就跟小编一起来看下吧
    2021-08-08
  • jackson 实现null转0 以及0转null的示例代码

    jackson 实现null转0 以及0转null的示例代码

    这篇文章主要介绍了jackson 实现null转0 以及0转null的示例代码,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-09-09
  • Java中double精度丢失问题原因及解决办法

    Java中double精度丢失问题原因及解决办法

    使用Java double进行运算时,经常出现精度丢失的问题,总是在一个正确的结果左右偏0.0000**1,这篇文章主要给大家介绍了关于Java中double精度丢失问题原因及解决办法,需要的朋友可以参考下
    2024-01-01
  • Java中的Phaser使用详解

    Java中的Phaser使用详解

    这篇文章主要介绍了Java中的Phaser使用详解,与其他障碍不同,注册在phaser上进行同步的parties数量可能会随时间变化,任务可以随时进行注册,需要的朋友可以参考下
    2023-11-11
  • 分布式系统中的降级熔断设计问题面试

    分布式系统中的降级熔断设计问题面试

    这篇文章主要为大家介绍了分布式系统中的降级熔断设计问题面试解答,有需要的朋友可以借鉴参考下,希望能有所帮助,祝大家多多进步,早日升职加薪
    2022-03-03
  • Springboot敏感字段脱敏的实现思路

    Springboot敏感字段脱敏的实现思路

    这篇文章主要介绍了Springboot敏感字段脱敏的实现思路,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-09-09
  • java实现创建缩略图、伸缩图片比例生成的方法

    java实现创建缩略图、伸缩图片比例生成的方法

    这篇文章主要介绍了java实现创建缩略图、伸缩图片比例生成的方法,可实现针对图片大小的缩放功能,是Java针对图片操作的典型应用,需要的朋友可以参考下
    2014-11-11

最新评论