zoukankan      html  css  js  c++  java
  • java.util.vector中的vector的详细用法

    ArrayList会比Vector快,他是非同步的,如果设计涉及到多线程,还是用Vector比较好一些 
    import java.util.*;

     

     

    public class VectorDemo{ 
    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)); 



    ------------- 
    Vector 类提供了实现可增长数组的功能,随着更多元素加入其中,数组变的更大。在删除一些元素之后,数组变小。 
    Vector 有三个构造函数, 
    public Vector(int initialCapacity,int capacityIncrement)          public Vector(int initialCapacity)          public Vector()   Vector 运行时创建一个初始的存储容量initialCapacity,存储容量是以capacityIncrement 变量定义的增量增长。初始的存储容量和capacityIncrement 可以在Vector 的构造函数中定义。第二个构造函数只创建初始存储容量。第三个构造函数既不指定初始的存储容量也不指定capacityIncrement。   Vector 类提供的访问方法支持类似数组运算和与Vector 大小相关的运算。类似数组的运算允许向量中增加,删除和插入元素。它们也允许测试矢量的内容和检索指定的元素,与大小相关的运算允许判定字节大小和矢量中元素不数目。   现针对经常用到的对向量增,删,插功能举例描述: 
    addElement(Object obj)     把组件加到向量尾部,同时大小加1,向量容量比以前大1   
    insertElementAt(Object obj, int index)     把组件加到所定索引处,此后的内容向后移动1 个单位   
    setElementAt(Object obj, int index)   把组件加到所定索引处,此处的内容被代替。   removeElement(Object obj) 把向量中含有本组件内容移走。   removeAllElements() 把向量中所有组件移走,向量大小为0。   

    例如:

    import java.lang.System;

    import java.util.Vector;

    import java.util.Emumeration;

    public class Avector{                 

    public static void main(String args[]) { 
      0.Vector v=new Vector(); 
      1. v.addElement("one"); 
      2. addElement("two"); 
      3. v.addElement("three"); 
      4. v.insertElementAt("zero",0); 
      5. v.insertElementAt("oop",3); 
      6. v.setElementAt("three",3); 
      7. v.setElementAt("four",4); 
      8. v.removeAllElements(); 
     

    Vector中的变化情况: 
    1. one   2. one   3. one   4. zero   5.zero   6. zero  7. zero 8.       two   two  one   one   one   one            three   two   two   two   two  three   oop   three  three  three   three  four     另外,Vector 在参数传递中发挥着举足轻重的作用。在Applet 中有一块画布(Canvas) 和一个(Panel), 而Panel 中放着用户要输入的信息,根据这些信息把参数传递到canvas 中,这时在Java 中用一个接口(Interface), 而在接口中需用一个Vector 去传递这些参数。另外,在一个类向另一个类参数传递就可以用这种方法。   例如:   
    import java.util.Vector 
    interface codeselect{ Vector codeselect=new Vector(); } 显示数学信息 
    Vector(0)存入学生编号 
    Vector(1)存入学科     在Panel 中当用户在TextField 和Choice 中选择自己所要求的内容,程序中通过事件响应把值传到向量Vector 中。

     

    同步是个很大的问题,尤其多线程,和进程中,因此,我们在多线程中同时对某个数组操作时,支持同步的vector无疑是个很好的选择,一般在需要将多个元素存在一个集合里的时候用。
    java.util 类 Vector 
    boolean add(E o) 
    将指定元素追加到此向量的末尾。 
    void add(int index, E element) 
    在此向量的指定位置插入指定的元素。 
    boolean addAll(Collection

  • 相关阅读:
    创建型设计模式之-单例
    设计模式(1、创造型2、结构型、3行为型)
    手写IOC容器和两种注入(构造方法注入和属性注入)
    从依赖倒置原则到IOC控制反转
    自定义HttpHandler可以做什么
    一个用户在浏览器上输入网址怎么走到我们写的.net程序中的,请求到管道处理
    代理Nginx
    .Net Expression表达式目录树(自己动态创建表达式目录树)
    canvas绘制圆环进度条
    城市二级联动
  • 原文地址:https://www.cnblogs.com/luckForever/p/7254328.html
Copyright © 2011-2022 走看看