![](/img/trans.png)
[英]Type mismatch: cannot convert from ArrayList<?> to List<String>
[英]Type mismatch: cannot convert from ArrayList to List
我只有这个,但我的编译器说:类型不匹配:无法从ArrayList转换为List那么有什么问题可以告诉我什么问题? 我正在使用Elipse Java EE IDE。
import java.awt.List;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Iterator;
public class Main {
public static void main(String[] args) {
List list = new ArrayList();
}
}
导入不正确,必须是java.util.List
。
您已导入java.awt.List
,它是AWT包中的列表控件,而不是java.util.List
,它是表示元素列表的集合类。 因此,Java认为您正在从逻辑数组值列表转换为小部件,这没有任何意义。
将导入行更改为
import java.util.List;
应该解决这个问题,就像写作一样
java.util.List list = new ArrayList();
明确表明你想要一个集合。
也就是说,你也应该在这里使用泛型。 使用原始集合类型一直被弃用。 最好的答案是写一些像
List<T> list = new ArrayList<T>();
希望这可以帮助!
您需要导入java.util.List
而不是java.awt.List
。
您可能还想使用类型参数而不是原始类型。 例如,如果列表将保存String
值:
List<String> list = new ArrayList<>();
或者,在Java 7之前:
List<String> list = new ArrayList<String>();
因为java.util.ArrayList
扩展了java.util.List
,而不是java.awt.List
。 您导入错误的类:
import java.awt.List;
与
import java.util.List;
正如其他人所说,它导致导入错误。 由于您正在使用Eclipse EDE,如果出现错误,请将光标保持在该位置并按Ctrl + 1
,它将显示可能有助于您修复错误的建议。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.