欢迎来到天天文库
浏览记录
ID:15407795
大小:90.50 KB
页数:6页
时间:2018-08-03
《java语言中的向量》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、JAVA向量介绍向量(Vector)是java.util类包提供的一个工具类。它对应于类似数组的顺序存储的数据结构,但是具有比数组更强大的功能。它是允许不同类型元素共存的变长数组。每个Vector类的对象可以表达一个完整的数据序列。Vector类的对象不但可以保存顺序的一列数据,而且还提供了许多有用的方法来操作和处理这些数据。另外,Vector类对象所表达的序列中元素的个数是可变的,即Vector实现了变长数组。Java中的数组只能保存固定数目的元素,且必须把所有需要的内存单元一次性的申请出来,而不能先创
2、建数组再追加数组元素数量,为了解决这个问题Java中引入了向量类Vector。Vector也是一组对象的集合,但相对于数组,Vector可以追加对象元素数量,可以方便的修改和维护序列中的对象。向量比较适合在如下情况下使用:1.需要处理的对象数目不定,序列中的元素都是对象或可以表示为对象2.需要将不同类的对象组合成一个数据序列3.需要做频繁的对象序列中元素的插入和删除4.经常需要定位序列中的对象和其他查找操作5.在不同的类之间传递大量的数据Vector类的方法相对于数组要多一些,但是使用这个类也有一定的局限
3、性,例如其中的对象不能是简单数据类型等。(1)创建向量类的对象Vector类有三个构造方法:lVector():构造一个空的向量。lVector(intcapacity):以指定的存储容量构造一个空的向量。lVector(intcapacity,intcapacityIncrement):以指定的存储容量和容量增量构造一个空的Vector。例如:VectorMyVector=newVector(100,50);这个语句创建的MyVector向量序列初始有100个元素的空间,以后一旦使用殆尽则以50为单位递
4、增,使序列中元素的个数变化成150,200,…。在创建Vector序列时,不需要指明序列中元素的类型,可以在使用时确定。(2)向向量序列中添加元素:有两种添加元素的方法:addElement(Objectobj)将新元素添加到序列尾部。insertElementAt(Objectobj,intindex)将新元素插入到指定位置。下面是使用这两种方法的例子:VectorMyVector=newVector();for(inti=1;i<=10;i++){MyVector.addElement(newInte
5、ger(i));}MyVector.insertElementAt("middle",5);例题importjava.util.*;classaa{publicstaticvoidmain(String[]arg){VectorMyVector=newVector();for(inti=1;i<=10;i++)MyVector.addElement(newInteger(i));MyVector.insertElementAt("middle",5);for(inti=0;i<=10;i++)System
6、.out.println(MyVector.elementAt(i));}//main}//class运行结果:12345middle678910(3)修改或删除向量序列中的元素使用以下方法修改或删除向量序列中的元素:1.setElementAt(Objectobj,intindex)将向量序列index位置处的对象元素设置成为obj,如果这个位置原来有元素,则被覆盖。2.removeElement(Objectobj)删除向量序列中第一个与指定的obj对象相同的元素,同时将后面的元素前提,补上空位。这个
7、方法返回的是布尔值。3.removeElementAt(intindex)删除index指定位置处的元素,同时将后面的元素前提。4.removeAllElements()清除向量序列中的所有元素。下例中先创建一个Vector,再删除掉其中的所有字符串对象“to”。VectorMyVector=newVector(100);for(inti=0;i<10;i++){MyVector.addElement(“welcome”);MyVector.addElement(“to”);MyVector.addEle
8、ment(“beijing”);}while(MyVector.removeElement(“to”));(4)查找向量序列中的元素常用于查找向量序列中某元素的方法如下:1.ObjectelementAt(intindex)返回指定位置处的元素。一个要注意的问题:由于返回的是Object类型的对象,在使用之前通常需要进行强制类型转换,将返回的对象引用转换成Object类的某个具体子类的对象。例如:Stringstr=(Stri
此文档下载收益归作者所有