将原始矢量转换为参数化矢量

时间:2014-07-11 07:51:15

标签: java generics

我听说尽可能使用参数化向量是一个好习惯,所以我有一个超类,其中一个方法返回一个原始向量,我想将它添加到我的String参数化Vector中。

Vector<String> paramVector = new Vector<String> ();
paramVector = Superclass.somemethod(textfield.gettext); //Returns a raw vector

此代码会发出警告,表示需要进行未经检查的转换,我也希望这样做,即在分配时将原始矢量转换为参数化矢量。

1 个答案:

答案 0 :(得分:1)

您可以简单地使用@SuppressWarnings({"unchecked", "rawtypes"}),但使用此代码会更安全:

Vector rawVector = Superclass.somemethod(textfield.gettext);
Vector<String> paramVector = new Vector<String> ();

for(Object obj : rawVector)
{
   if(obj instanceof String)
      paramVector.add(obj);
}