Java ArrayList构造函数错误
我是一名Java初学者,目前正在使用Java版本8。当我编码时,我遇到了以下问题,但我真的找不到问题所在。 我试图通过声明Java ArrayList构造函数错误,java,arraylist,constructor,arguments,Java,Arraylist,Constructor,Arguments,我是一名Java初学者,目前正在使用Java版本8。当我编码时,我遇到了以下问题,但我真的找不到问题所在。 我试图通过声明 ArrayList al=new ArrayList(100000); …初始容量为100000。 但是程序返回一个错误,说 The constructor ArrayList(int) is undefined. 为了确保这一点,我甚至搜索了类java.util.ArrayList的API文档,当然,它说 ArrayList(int initialCapacit
ArrayList al=new ArrayList(100000);
…初始容量为100000。
但是程序返回一个错误,说
The constructor ArrayList(int) is undefined.
为了确保这一点,我甚至搜索了类java.util.ArrayList的API文档,当然,它说
ArrayList(int initialCapacity):
Constructs an empty list with the specified initial capacity.
…在其构造函数摘要中
另外,第二个问题是:声明ArrayList后,我尝试将其用作add方法的参数,但它说
The method add(List) in the type ArrayList3 is not applicable for the arguments (ArrayList).
我的完整代码如下:
import java.util.*;
public class ArrayList3 {
public static void main(String[] args) {
ArrayList al=new ArrayList(100000);
LinkedList ll=new LinkedList();
System.out.println("ArrayList: "+add(al));
System.out.println("LinkedList: "+add(ll));
}
public static long add(List list) {
long start = System.currentTimeMillis();
for(int i=0;i<10000;i++)
list.add(i+" ");
long end = System.currentTimeMillis();
return start - end;
}
}
import java.util.*;
公共类ArrayList 3{
公共静态void main(字符串[]args){
ArrayList al=新ArrayList(100000);
LinkedList ll=新建LinkedList();
System.out.println(“ArrayList:+add(al));
System.out.println(“LinkedList:+add(ll));
}
公共静态长添加(列表){
长启动=System.currentTimeMillis();
对于(int i=0;i您的包中有另一个ArrayList
类,它与java.util.ArrayList
冲突。它可能是一个真实的类,也可能是以前编译的结果
请注意,由于名称冲突,这将无法编译
package stackOv;
import java.util.*;
public class ArrayList {
public static void main(String[] args) {
ArrayList al=new ArrayList(100000);
}
}
而这将编译,因为使用完全限定名可以解决冲突
import java.util.*;
public class ArrayList {
public static void main(String[] args) {
java.util.ArrayList al=new java.util.ArrayList(100000);
}
}
编译很好。无法重现错误。清理和重建?在Java 8中运行良好。您有一个ArrayList 3
类。我猜您也有一个自定义ArrayList
类。您有另一个名为ArrayList
的类,与ArrayList 3
位于同一源文件或同一包中(毫不奇怪,这里显示的类名为ArrayList3
)这将起作用,但是,了解类路径中导致此问题的另一个ArrayList是什么很重要,谢谢,实际上我在同一个包中创建了一个ArrayList类,在我删除它之后,第一个问题得到了解决;但我仍然无法修复第二个问题,即我使用参数ty创建的方法List的pe表示“类型ArrayList 3中的方法add(List)不适用于参数(ArrayList)“。我想知道程序是否会与ArrayList.add冲突,我尝试将方法名称更改为“measure”,但错误仍然没有消失。我真的不明白为什么会发生此问题;类ArrayList是否实现接口列表?也许可以在没有此自定义ArrayList的情况下尝试其他工作空间。