Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 向量的函数add不';行不通_Java_Vector - Fatal编程技术网

Java 向量的函数add不';行不通

Java 向量的函数add不';行不通,java,vector,Java,Vector,我有一个Line类和一个fit构造函数 我定义: Line l1 = new Line("A", "B"); 我有一个类ts,它有一个成员:Vector allLines=new Vector() 我想将行l1添加到此向量中 我尝试了三种选择,但都不起作用: ts.allLines.addElement(l1); 但我得到了一个错误: 类型向量中的方法addElement(Line)不是 适用于参数(行) 但我得到了: 类型向量中的方法add(Line)不适用于 参数(行) 但它不起作用。请

我有一个
Line
类和一个fit构造函数

我定义:

Line l1 = new Line("A", "B");
我有一个类
ts
,它有一个成员:
Vector allLines=new Vector()

我想将行
l1
添加到此向量中

我尝试了三种选择,但都不起作用:

ts.allLines.addElement(l1);
但我得到了一个错误:

类型向量中的方法addElement(Line)不是
适用于参数(行)

但我得到了:

类型向量中的方法add(Line)不适用于
参数(行)


但它不起作用。

请确保您对Line类的导入是正确的。您可能导入了错误的行类。

您的类应该如下所示:

package com.example;  
import java.util.Vector;  
import com.example.Line;

public class Foo  
{  
    Vector<Line> lines = new Vector<Line>();  

    public void add(Line line)  
    {
         this.lines.add(line);
    }  
}  
package.com.example;
导入java.util.Vector;
导入com.example.Line;
公开课Foo
{  
向量线=新向量();
公共无效添加(行)
{
this.lines.add(行);
}  
}  

确保您同时导入了正确的
向量
类和正确的
类。

您可能应该使用列表实现之一,例如ArrayList,而不是Vector。尽管它没有被标记为已弃用,但它在库中只是为了支持遗留代码,应该避免使用。突出显示Vector类的几个问题。

为什么在2013年使用
Vector
?您需要向我们展示尽可能小的程序。您的代码看起来不错-问题在于您尚未展示的代码。请展示一个小的完整示例,重新创建错误。谢谢。我的line类位于:HW11/src/line.java中。所以我必须导入:HW11.src.Line?@AlonShmiel很可能是的。谢谢。我的line类位于:HW11/src/line.java中。所以我必须导入:HW11.src.Line?
package com.example;  
import java.util.Vector;  
import com.example.Line;

public class Foo  
{  
    Vector<Line> lines = new Vector<Line>();  

    public void add(Line line)  
    {
         this.lines.add(line);
    }  
}