我是Java的新手,我遇到了问题。如何使用java.util.Vector;作为函数的返回类型?
import java.util.Vector;
...
public Vector func( Vector v )
{
System.out.print(v[0]); // as example
// and i got an error: The type of the expression must be an array type but it resolved to Vector.
}
如果我像这样使用它
// got an error: Syntax error, insert "Dimensions" to complete ReferenceType
public Vector <double> func (Vector <double> v)
{
System.out.print(v[0]);
}
在C ++中它看起来像这样:
#inlcude <vector>
std::vector <double> func( std::vector <double> v )
{
std::cout << v[0]; // as example
}
答案 0 :(得分:3)
您无法在Java中的非数组对象上执行此操作:
v[0]
只能通过array
表示法取消引用[]
。 Vector
是它自己的对象,它有自己的方法来获取/操作数据。
您的归档类型Vector
是正确的,因此您的问题有点误导。
请参阅此处了解Vector https://docs.oracle.com/javase/7/docs/api/java/util/Vector.html
上的Javadocs
特别重要(正如@Boris the Spider所提到的那样:...Vector is synchronized. If a thread-safe implementation is not needed, it is recommended to use ArrayList in place of Vector.