我的作业涉及创建三个操作链接列表的方法。说明指示我使用以下构造函数:
public MyList (LinkedList<Integer> list) {
...
}
但是,无论我如何尝试集成它,Eclipse 似乎都不喜欢我的代码。这是我当前的尝试:
import java.util.*;
public class ListClass {
public static void main(String[] args) {
LinkedList<Integer> list = new LinkedList<Integer>();
list.add(10);
list = MyList(list);
}
public MyList (LinkedList<Integer> list){
LinkedList<Integer> r = list;
return r;
}
}
现在我以为上面的 MyList 构造函数会很高兴地返回输入的列表,但我的 Java 技能确实很弱。我已经阅读了教程并尝试了一下,但它并没有像我想象的那样有效。
无论如何,Eclipse 给了我两个错误 - 在“list = MyLIst(list);”处行它说方法 MyList 对于 ListClass 是未定义的,并且在“public MyList”行它说“该方法的返回类型丢失” - 但我已经告诉它 r 是一个链接列表,并返回它。
我的脑子很痛,想不通,谁能帮帮我?我想如果我能够让上面的代码工作,我应该能够解决其余的问题。
较新的代码
正如正确指出的那样,我的类名与我假设的构造函数名称不同。这是调整后的代码:
import java.util.LinkedList;
public class MyList {
public static void main(String[] args) {
LinkedList<Integer> list = new LinkedList<Integer>();
list.add(10);
list.add(-20);
MyList(list);
}
public MyList(LinkedList<Integer> list) {
LinkedList<Integer> newList = list;
System.out.println(newList);
}
}
这已经解决了“返回类型”错误(谢谢),尽管我仍然收到“未定义”错误。
最佳答案
方法 MyList
的声明中缺少的是该方法的返回类型:
public MyList (LinkedList<Integer> list)
应该是这样的
public LinkedList<Integer> MyList (LinkedList<Integer> list)
除此之外,方法名称的通常约定是驼峰式大小写,但以小写字母开头。我将其称为 myList
而不是 MyList
(您应该为该方法选择一个更好的名称,以反射(reflect)该方法的用途)。
关于java - 在 Java 中实现新的 LinkedList 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12056784/