Java创建多个对象

时间:2014-12-09 19:40:50

标签: java loops object vector while-loop

我创建了一个类来定义名为Data的对象,它们在字符串中存储行号,变量值和变量名。 我想用从txt文件中获取的信息填充数据对象并存储在字符串变量line中,我使用下面的while循环来填充我的数据对象:

while(line !=null){
            input.setLN(line);
            line = inputBuffer.readLine();
            input.setVN(line);
            line = inputBuffer.readLine();
            input.setVV(line);
            line = inputBuffer.readLine();
            counter ++;

但是,我想将每个Data个对象添加到Vector(必须使用Vector完成),这样我就可以存储每个LN,VN,VV和能够从Vector输出它们。

我使用以下代码声明了Data对象的向量:

Vector<Data> myVector=new Vector<Data>();

但是,while循环的每次迭代都会覆盖分配给数据对象的先前值,因此当我在while循环的底部使用以下代码时,只有一个Data对象存储在向量中: / p>

myVector.add(input);

我知道我需要在循环的每次迭代后创建input的副本,并在将新值存入Vector之前将该副本存储到input中,但是我我不确定如何做到最好。

任何建议表示赞赏

1 个答案:

答案 0 :(得分:2)

  

我知道我需要在循环的每次迭代后创建一个输入副本,并在将新值存入输入之前将该副本存储到Vector中,但我不确定如何最好地执行此操作。

怎么样:

while(line !=null) {
    Data input = new Data();
    input.setLN(line);
    line = inputBuffer.readLine();
    input.setVN(line);
    line = inputBuffer.readLine();
    input.setVV(line);
    line = inputBuffer.readLine();
    counter ++;
    ...
    myVector.add(input);
}