Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Vector类

Vector类

作者头像
星哥玩云
发布于 2022-09-14 12:03:04
发布于 2022-09-14 12:03:04
48500
代码可运行
举报
文章被收录于专栏:开源部署开源部署
运行总次数:0
代码可运行

1、Vector概述

Vector:我们可以将其理解为版本旧的、安全的、效率低的ArrayList

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import java.util.Vector;

public class VectorDemo01 {
    public static void main(String[] args){
        //Vector的创建
        //使用Vector的构造方法进行创建
        Vector v = new Vector(4);
        //向Vector中添加元素
        //使用add方法直接添加元素
        v.add("Test0");
        v.add("Test1");
        v.add("Test0");
        v.add("Test2");
        v.add("Test2");
        //从Vector中删除元素
        v.remove("Test0"); //删除指定内容的元素
        v.remove(0); //按照索引号删除元素
        //获得Vector中已有元素的个数
        int size = v.size();
        System.out.println("size:" + size);
        //遍历Vector中的元素
        for(int i = 0;i < v.size();i++){
            System.out.println(v.get(i));
        }
    }
}

2、Vector常用方法

void addElement(E obj): 将指定的组件添加到此向量的末尾,将其大小增加 1

int indexOf(Object elem) 搜索给定参数的第一个匹配项,使用 equals 方法测试相等性。

int indexOf(Object elem, int index) 搜索给定参数的第一个匹配项,从 index 处开始搜索,并使用 equals 方法测试其相等性。

void insertElementAt(E obj, int index) 将指定对象作为此向量中的组件插入到指定的 index 处。

boolean isEmpty() 测试此向量是否不包含组件。

int lastIndexOf(Object elem) 返回指定的对象在此向量中最后一个匹配项的索引。

int lastIndexOf(Object elem, int index) 向后搜索指定的对象,从指定的索引处开始搜索,并返回一个索引。

boolean removeElement(Object obj) 从此向量中移除变量的第一个(索引最小的)匹配项。

void setElementAt(E obj, int index) 将此向量指定 index 处的组件设置为指定的对象。

void setSize(int newSize) 设置此向量的大小。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import java.util.Vector;

public class VectorDemo01 {

    public static void main(String args[])
    {
        Vector v1 = new Vector();
        Integer integer1= new Integer(1);
        //加入为字符串对象
        v1.addElement("one");
        //加入的为integer的对象
        v1.addElement(integer1);
        v1.addElement(integer1);
        v1.addElement("two");
        v1.addElement(new Integer(2));
        v1.addElement(integer1);
        v1.addElement(integer1);
        //转为字符串并打印
        System.out.println("The Vector v1 is:"+v1);

        //向指定位置插入新对象
        v1.insertElementAt("three",2);
        v1.insertElementAt(new Float(3.9),3);
        System.out.println("The Vector v1 is:"+v1);

        //将指定位置的对象设置为新的对象
        //指定位置后的对象依次往后顺延
        v1.setElementAt("four",2);
        System.out.println("The Vector v1 is:"+v1);
        //从向量对象v1中删除对象integer1
        v1.removeElement(integer1);
        System.out.println("The Vector v1 is:"+v1);

        //按不同的方向查找对象integer1所处的位置
        System.out.println("The position of Object1(top-to-botton):"+v1.indexOf(integer1));
        System.out.println("The position of Object1(tottom-to-top):"+v1.lastIndexOf(integer1));

        //重新设置v1的大小,多余的元素被抛弃
        v1.setSize(4);
        System.out.println("The new Vector(resized the vector)is:"+v1);

    }
}

3、Vector枚举

Vector中提供了一个独特的取出方式,就是枚举Enumeration。此接口Enumeration的功能与 Iterator 接口的功能是类似的。

public Enumeration <E> elements() 返回此向量的组件的枚举。

Enumeration里面的方法:

boolean hasMoreElements( )测试此枚举是否包含更多的元素。

Object nextElement( ) 获取元素。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import java.util.Enumeration;
import java.util.Vector;

public class VectorDemo02{
    public static void main(String[] args) {

        Vector<String > vector = new Vector<>();
        vector.addElement("111");
        vector.addElement("222");
        vector.addElement("444");
        vector.addElement("333333");

        // 获取 枚举
        Enumeration<String> elements = vector.elements();
        while (elements.hasMoreElements()) {
            String nextElement = elements.nextElement();
            System.out.println(nextElement);
        }
    }
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
java之Vector使用(与ArrayList区分)
ArrayList会比Vector快,他是非同步的,如果设计涉及到多线程,还是用Vector比较好一些 import java.util.*;
大黄大黄大黄
2018/09/14
3.6K0
Vector:动态数组的使用和说明
创建了一个向量类的对象后,可以往其中随意地插入不同的类的对象,既不需顾及类型也不需预先选定向量的容量,并可方便地进行查找。对于预先不知或不愿预先定义 数组大小,并需频繁进行查找、插入和删除工作的情况,可以考虑使用向量类。向量类提供了三种 构造方法:
微风-- 轻许--
2022/04/13
8000
盘点Vector类向量中添加和删除元素常用方法
1.在c和c++中的动态数组一般是用指针来实现的,Vector类是实现List接口,java提供了很多的类库来方便开发人员来使用,Vector类是其中之一。Vector类是实现动态数组的功能,主要是用在不知道数组的大小,在开发常用查找、插入、删除的工作的情况。
Java进阶者
2021/07/23
1.1K0
java之学习vector类的特有功能
结果示意图 vector类概述 Vector 类可以实现可增长的对象数组。与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector 的大小可以根据需要增大或缩小,以适应创建 Vecto
吾爱乐享
2018/07/12
3830
vector数组 java_Java——数组、向量(Vector)详解
1. int []arr=new int[5]; 和int arr[] = new int[5];效果是一样的,不过开发中推荐前者。
用户7886150
2021/04/27
1.1K0
Java--集合类之Vector、BitSet、Stack、Hashtable
集合类的优点: 任何集合类都可以动态地改变自身的大小。 集合类的缺点: 类型未知。将对象置入集合时会丢失对象的类型信息。因为为了成为“常规”工具,对象实际容纳的是“Object"句柄。应该知道”Object"包括所有对象,因为所有类都是从Object类继承而来。但不包括基本数据类型。 由于类型丢失问题,从集合内取得一个对象,在正式使用它之前一定要进行造型(具体说来是下溯造型)。 类型丢失意味着我们可以将任何类型的对象放入一个集合中,但Java为了防止滥用集合中的对象,进行了“违例”控制,例如下述代码: cl
SuperHeroes
2018/05/22
5850
[javaSE] 集合框架(ArrayList,LinkedList,Vector)
ArrayList特点:底层使用数组数据结构,查询速度快(使用脚标查),插入删除慢(索引要改变)
唯一Chat
2019/09/10
2900
源码阅读之Vector
源码阅读是基于JDK7,本篇主要涉及Vector常用方法源码分析。 1.概述 Vector实现了一个增长型的Object数组,可以包含任何类型的元素,包括null。像数组一样,它的元素可以使用下标索引值进行访问。为了容纳添加或删除后的元素,Vector的容量可以增长或收缩。每个Vector实例通过维护容量大小和容量增长因子来优化存储管理。Vector容量的大小要大于等于Vector中元素的实际个数,如果添加元素时需要扩容,则会按照增长因子的大小进行扩容。当需要添加大量的元素到Vector中,需要给它进行合
JavaQ
2018/04/04
6430
源码阅读之Vector
Java集合:关于 Vector 的内容盘点
Vector 的思路和 ArrayList 基本是相同的,底层是数组保存元素,Vector 默认的容量是10,有一个增量系数,如果指定,那么每次都会增加一个系数的大小,否则就扩大一倍。
栗筝i
2022/12/01
5380
盘点Vector类搜索向量中的元素常用方法
3.Object ElementAt(int index):返回指定index位置处的元素。
Java进阶者
2021/07/23
9060
java集合【9】-- Vector接口源码解析
Vector和前面说的ArrayList很是类似,这里说的也是1.8版本,它是一个队列,但是本质上底层也是数组实现的。同样继承AbstractList,实现了List,RandomAcess,Cloneable, java.io.Serializable接口。具有以下特点:
秦怀杂货店
2020/11/22
4900
java集合【9】-- Vector接口源码解析
[搞懂Java集合类1]ArrayList,Vector与Stack
本文非常详尽地介绍了Java中的三个集合类 ArrayList,Vector与Stack
Java技术江湖
2019/09/25
7230
16(01)总结List的子类,ArrayList,Vector,LinkedList
1:List的子类(掌握) (1)List的子类特点 ArrayList: 底层数据结构是数组,查询快,增删慢 线程不安全,效率高 Vector: 底层数据结构是数组,查询快,增删慢 线程安全,效率低 LinkedList: 底层数据结构是链表,查询慢,增删快 线程不安全,效率高 (2)ArrayList A:没有特有功能需要学习 B:案例 a:ArrayList存储字符串并遍历 package cn.itcast_01; public class Student { priv
Java帮帮
2018/03/15
9740
Java基础系列(四十三):集合之Vector&amp;Stack
Vector是一种实现了动态数组的集合,何为动态数组呢?即长度可以自动增长的数组,它是线程同步的,也就是说同一时刻只有一个线程可以写Vector,可以避免多线程同时写引起的不一致性,但是比较消耗资源。接下来,我们来看Vector的源码。
山禾说
2019/01/21
3300
java中Vector有什么用,举例说明
马克-to-win:Vector和ArrayList很类似,前面讲了二者的区别,就在于同步的问题上,Vector的使用是非常简单的:先创建一个,再用addElement()置入对象,以后用elementAt()取得那些对象
马克java社区
2021/04/27
4510
java中Vector有什么用,举例说明
务实java基础之集合总结
Java 提供了容纳对象(或者对象的句柄)的多种方式。其中内建的类型是数组,此外, Java 的工具库提供了一些 “集合类”,利用这些集合类,我们可以容纳乃至操纵自己的对象。 声明:本篇博客内容参考自《java编程思想》,代码均来自书中,大部分内容截取自该书
老马的编程之旅
2022/06/22
6280
务实java基础之集合总结
java集合框架-Vector(四)
在上面的示例中,我们首先创建了一个包含三个元素的Vector对象,并将其打印出来。然后,我们使用size()方法获取Vector中元素的数量,并使用isEmpty()方法检查Vector是否为空。接下来,我们使用contains(Object obj)方法检查Vector是否包含指定元素,使用indexOf(Object obj)方法获取Vector中第一次出现指定元素的位置,以及使用lastIndexOf(Object obj)方法获取Vector中最后一次出现指定元素的位置。输出结果如下所示:
玖叁叁
2023/05/07
1060
Enumeration接口
Enumeration接口是Iterator迭代器的“古老版本”,从JDK1.0开始,Enumeration接口就已经存在了(Iterator从JDK1.2才出现)。Enumeration 接口比Iterator小,只有两个名字很长的方法:
张哥编程
2024/12/19
590
第四次文章:其他容器类
各位小伙伴儿大家好,临近年关,先给大家拜个早年,祝大家新年快乐!今天先分享一碗鸡汤:代码学习绝对不是一条坦途,人生奋斗的向上之路也异常曲折,但没有关系,当你回望之时,我依然在此为你守候。
鹏-程-万-里
2019/09/27
3040
Java集合:List集合
ArrayList是List接口的典型实现类,本质上,ArrayList是对象引用的一个变长数组。
栗筝i
2022/12/01
1.7K0
相关推荐
java之Vector使用(与ArrayList区分)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验