Java Vector中的元素如何引用呢?

来源:百度知道 编辑:UC知道 时间:2024/06/06 06:39:00
比如说一个数组a[5]可以用下标a[1]/a[2]来引用第二个、第三个元素?那Vector中的元素如何引用呢?
class Statement
{
...
Vector x = new Vector(1); //x的坐标
...
}
Statement my;
double x11;
double []x1= new double [1];
Vector x = new Vector(1);
int time = round - expendtime);//round=向量的大小,expendtime小于round的一个值
x1[0]=getX();
(my.x).addElement(x1);
x11=(my.x).elementAt(time);

为什么会出现下面的错误
Semantic Error: The type of the right sub-expression, "java.lang.Object", is not assignable to the variable, of type "double".

java.util.Vector也实现了List接口,其描述的也是可变长度的对象数组.
与ArrayList的差别:Vector是同步(线程安全)的,运行效率要低一些,主要用在多线程的环境中,而ArrayList是不同步的,适合在单线程中使用.
常用方法:
public Vector() //空的向量列表,大小是10
public Object elementAt(int index) // 获取指定下标的元素
public void addElement(Object obj) //向当前的向量集合中加入一个元素
public void removeElementAt(int index) //移除指定下标处的元素
public void insertElementAt(E obj,int index) //向指定下标出插入一个元素
public boolean removeElement(Object obj) //删除下标最小的obj指定的元素
public void removeAllElements() //删除所有元素
public Object[] toArray() //组成数组
//

vector.elementAt(i);

在java中是Collection:List,Set,Map等。List可以get(5),Map是get(key),Set没有顺序,不能get(5)。List和Set还可以toArray(),返回一个对象数组!!

建议看一下这篇文章
http://www.blogjava.net/Yang/archive/2006/01/05/26662.html