应该导入什么来创建列表?

时间:2015-10-05 03:18:50

标签: java list import

我尝试创建一个列表:

List list = new ArrayList();

我编译了它并说它需要导入一些东西。 我试过import java.util.Collection; 但这没有任何作用。

我尝试java.util.List,但所有错误消息都给我的印象是它有点危险。

这是我的代码,所以你可以理解我的困境,这是this code的mod:

// purpose: remodify original program such that it will not print duplicate factors. added lines are marked by //t

import java.util.Collection; //???????????????? //t
public class Factors
{
    public static void main(String[] args) { 

        // command-line argument
        long n = Long.parseLong(args[0]);
        List list = new ArrayList(); //potato, attempt to create a list so that I can later modify the list such that it will delete dupes right before printing
        System.out.print("The prime factorization of " + n + " is: ");

        // for each potential factor i
        for (long i = 2; i*i <= n; i++) {

            // if i is a factor of N, repeatedly divide it out
            while (n % i == 0) {
                System.out.print(i + " "); 
                n = n / i;
            }
            list.add(n);
        }

        Set set = new HashSet(list); //t, I read somewhere that this will clear the dupes
        // if biggest factor occurs only once, n > 1
        if (n > 1){ 
            System.out.println(set); //t, i assume it will do as expected, but right now the import error is stopping me

        }
        else       System.out.println();
    }
}

是java的新手,我不知道我到底在做什么。回到这个问题,我相信我所要做的就是import java.util.ArrayList;,它会按照我的需要运作。抱歉,麻烦。

5 个答案:

答案 0 :(得分:1)

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

List<data type> var = new ArrayList<data type>();

示例List<String> var = new ArrayList<String>();

答案 1 :(得分:0)

List list = new ArrayList();

您需要导入:

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

这是因为您既使用List的一般实现,也使用类ArrayList。

答案 2 :(得分:0)

很难准确地发现你想要做什么,但这里有一些浅薄的表面帮助:

  1. 您需要删除集合的导入并添加:   import java.util,ArrayList; 和其中之一:

    import java.util.ArrayList;   import java.util.LinkedList;   import java.util.Vector;   import java.util.Stack; 或者,如果列表是可显示的:   import java.awt.List;要么   import java.swing.JList;

  2. 对于所有这些,包括Set和HashSet,您需要指定 例如,将添加到对象的条目类型 从你的文字判断:   ArrayList alist = new Arraylist();   列表longlist = new List();   longlist = alist; 虽然上述目标在你的最终目标方面可能是无稽之谈,但它是一个 您的陈述的有效翻译:   List list = new ArrayList();
  3. 我希望我能提供更多帮助,但根据您提供的信息, 根据Java要求,上述内容是安全合理的。

答案 3 :(得分:0)

对不起乱码的文字。这是一个更好的: 很难准确地发现你想要做什么,但这里有一些浅表面的帮助:

  1. 您需要删除集合的导入并添加:

      

    import java.util,ArrayList;和其中之一:

    -import java.util.ArrayList; 
    -import java.util.LinkedList; 
    -import java.util.Vector; 
    -import java.util.Stack; 
    
      

    或者,如果列表是可显示的:

    -import java.awt.List; or 
    -import java.swing.JList;
    
  2. 对于所有这些,包括Set和HashSet,您需要指定将添加到对象的条目类型,例如,从您的文本判断:

    ArrayList alist = new Arraylist(); 
    List longlist = new List(); 
    longlist = alist; 
    
  3. 虽然上述目标在最终目标方面可能是无意义的,但它是您的语句的有效翻译:List list = new ArrayList();

    我希望我能提供更多帮助,但根据您提供的信息,上述内容在Java要求方面是安全合理的。

答案 4 :(得分:0)

很抱歉,入门系统吃掉了类型指示器,但最后它们是:很难确切地发现你想要做什么,但这里有一些浅表面的帮助:

  1. 您需要删除集合的导入并添加:
  2.    import java.util,ArrayList; 
    
         

    和其中一个:

    • 列表项导入java.util.ArrayList;
    • 列出项目导入java.util.LinkedList;
    • 列出项目导入java.util.Vector;
    • 列出项目导入java.util.Stack;

    或者,如果列表是可显示的:

    • 列出项目import java.awt.List;或
    • 列出项目import java.swing.JList;

      1. 对于所有这些内容,包括设置 HashSet ,您需要指定将添加到对象的条目类型,例如,根据您的文字判断:
      

    块引用

    ArrayList<long> alist = new Arraylist<long>(); 
    List<long> longlist = new List<long>(); 
    longlist = alist; 
    
      

    块引用

    虽然上述目标在最终目标方面可能是无意义的,但它是您的语句的有效翻译:List list = new ArrayList();

    我希望我能提供更多帮助,但根据您提供的信息,上述内容在Java要求方面是安全合理的。