如何在Java中创建List

时间:2013-09-12 00:51:43

标签: java

我尝试在Java中使用List,但它说“找不到符号”。

我尝试了以下代码:

List<int> myList=new List<int>();
myList=new JList<int>();

这根本不起作用。

3 个答案:

答案 0 :(得分:6)

这里有三个直接问题:

  1. 类型参数不能是原始的;您需要使用适当的wrapper class。在您的情况下,它将是List<Integer>

  2. List是一个接口:您无法实例化它。您需要实例化一个实现它的类,常见的选项是ArrayList

    List<Integer> myList = new ArrayList<Integer>();
    

    在Java 7及更高版本中,您实际上不必在赋值的右侧重新声明type参数:

    List<Integer> myList = new ArrayList<>();
    
  3. List / ArrayList不在java.lang包中,因此您必须通过在文件顶部添加相应的import语句来导入它们(根据包裹声明,如果有的话):

    import java.util.ArrayList;
    import java.util.List;
    

    这就是为什么它抱怨“无法找到符号”。

答案 1 :(得分:0)

以下列表声明的两个问题

List<int> myList=new List<int>();

是:

  1. List适用于对象,因此您需要使用Integer而不是primitive int
  2. List是一个接口,所以不能实例化它,使用ArrayList一个List接口的实现类来创建一个实例。
  3. 您需要将列表定义为:

        List<Integer> myList=new ArrayList<Integer>();
    

    还要确保在代码中导入以下类:

    import java.util.ArrayList;
    import java.util.List;
    

答案 2 :(得分:0)

首先,int不能用于参数化类型。您可以改为使用Integer

其次,List是一个接口,您无法实例化List。您可以使用实现ArrayList的{​​{1}}类:

List

或者:

ArrayList<Integer> list = new ArrayList<Integer>();