0

是否可以在 Vector 中更改类的某些参数:

  class CGen{
    public String Par1 = "";
    public String Par2 = "";
  }

  Vector GenVector = new Vector(0);
  //....

我需要使用最简单的形式...

  //....
  CGen NewGen = new CGen();
  GenVector.addElement(NewGen);

  void ChangeItemGen(int Index, String Str) {
    GenVector.elementAt(Index).Par1 = Str;
  }

上面的代码很简单,但真正的代码更复杂。

4

1 回答 1

0

这是可能的,但不像示例中那么简单。您必须将结果elementAt转换为正确的类型,以便编译器知道该Par1变量:

((CGen) GenVector.elementAt(Index)).Par1 = Str;

或者您必须在GenVector声明时指定使用的元素类型,然后您不再需要显式转换:

Vector<CGen> GenVector = new Vector<CGen>(0);
....
GenVector.elementAt(Index).Par1 = Str;

您可能应该使用ArrayList而不是Vector,除非您维护的是 90 年代编写的程序。请参阅为什么 Java Vector 类被认为已过时或不推荐使用?

于 2013-09-17T23:20:11.123 回答