我是Java编程的新手,我尝试了一个示例程序,源代码来自here:
List<String> list = new ArrayList<String>(); // Compile time error
String string1 = "a string";
list.add(string1);
String string2 = list.get(0);
获取编译时错误
Error Description:- The type List is not generic; it cannot be parameterized with arguments <String>
我不确定这个错误。谁能解释一下?
答案 0 :(得分:7)
您导入错误的List
。请尝试以下 * :
java.util.List<String> list = new java.util.ArrayList<String>();
如果有效,只需将List
导入替换为java.util
。
请注意,java.awt.List
不是泛型,这就是您收到错误的原因。
* 如果您使用的是Java 7+,则可以使用diamond:
List<String> list = new ArrayList<>();
答案 1 :(得分:1)
更改
List<String> list = new ArrayList<String>;
到
List<String> list = new ArrayList<String>();
答案 2 :(得分:0)
列表定义错误。它应该如下 -
List<String> list = new ArrayList<String>();
使用Putting()可以创建对象。
答案 3 :(得分:-1)
您可以尝试:
List<String> list = new ArrayList<String>(); // Compile time error
String string1 = "a string";
list.add(string1);
String string2 = list.get(0);
因为它必须是:
List<String> list = new ArrayList<String>();
不是
List<String> list = new ArrayList<String>;
答案 4 :(得分:-1)
看起来你忘记了圆括号
List<String> list = new ArrayList<String>();
即使它是通用的 - 你必须使用通常的构造函数和\ without parameters。