我想做一些简单的事情,即创建我自己的基于 java.util.linkedlist 的列表类,但我想限制可以做的事情。就目前而言,我想要的唯一方法是 addFirst 方法。我正在创建一个单链表。我遇到的问题是 addFirst 似乎没有被识别,我不确定我是否在我自己的构造函数中正确创建了列表。这是我到目前为止的代码。
import java.util.LinkedList;
public class singleList {
singleList() {
new LinkedList();
}
// void add(name addName) {
// addFirst(addName);
// }
public static void main(String[] args) {
singleList nameList = new singleList();
name name1 = new name("John", "Smith");
nameList.add(name1);
System.out.println("LinkedList contains : " + nameList);
}
}
所以你可以看到我想要做的是创建一个名为 nameList 的列表,此时,它唯一能做的就是使用 add 方法,它应该调用 LinkedList 的 addFirst 方法,该方法将元素添加到第一个位置列表。这有意义吗?
我得到的第一个错误是它无法从我的 add 方法中找到符号“addFirst”,而且我也不确定我的 singleList 构造函数是否正确。
如果有人想知道,这是为了学校作业。
这是修改后的代码,我从这里的第一个答案中得到了一些建议,看起来与另一个相似。
public class SingleList {
private LinkedList internalList;
SingleList() {
internalList = new LinkedList();
}
void add(name addName) {
internalList.addFirst(addName);
}
String get(int index) {
return internalList.get(index).toString();
}
public static void main(String[] args) {
SingleList nameList = new SingleList();
name name1 = new name("John", "Smith");
nameList.add(name1);
String getter = nameList.get(0);
System.out.println("LinkedList contains : " + nameList.get(0));
}
}