类中的LinkedList

时间:2015-03-22 13:53:23

标签: java linked-list

它是一个非常简单的代码,但无法弄清楚为什么我不能使用LinkedList bp;

package Itens;

import java.util.LinkedList;

public class Mochila {
    LinkedList bp = new LinkedList();

    /* Syntax error */
    bp.add();
}

Mochila课程与主要课程(Itens)不同。

2 个答案:

答案 0 :(得分:1)

您应该指定要添加到列表中的内容。

例如:

bp.add("abc");

最好不要使用原始的LinkedList类型。例如,如果列表应包含字符串,请使用:

LinkedList<String> bp = new LinkedList<>();
bp.add ("abc");

答案 1 :(得分:0)

您无法在课程级别调用bp.add();。应该在方法,构造函数或初始化块等代码块中调用指令(例如,如果声明方法将抛出它们,您将能够处理潜在的异常)。

此外,您还需要添加类似add(whatever)的内容(LinkedList中没有no-arbument方法add。)

其他方面是您应该使用泛型指定列表应包含的元素类型。有关详情,请访问What is a raw type and why shouldn't we use it?

最后一点是,如果您不打算使用仅存在于LinkedList中的任何方法,那么您应该通过使用更通用(甚至是抽象)的类或接口作为参考来使代码更加灵活。有关详情,请访问What does it mean to "program to an interface"?

请尝试使用

public class Mochila {
    List<String> bp = new LinkedList<>();

    {// this initialization block will be added at start of each constructor
     // of your Mochila class
        bp.add("something");
    }
}