所以我试图在一个类中实现一个方法,该方法返回所包含数据的Array表示(它用于练习二叉搜索树的赋值)。这是相关的代码(我认为):
public ArrayList<T> toArrayList() {
// TODO Auto-generated method stub.
return this.root.toArrayList();
}
public Object[] toArray() {
// TODO Auto-generated method stub.
return this.toArrayList().toArray();
}
特别注意toArray()
方法的返回类型。我试图找出为什么当我将返回类型设置为T[]
时,Eclipse会生气并抛出错误。我认为它更有意义,因为它是T. toArrayList()
和toArray()
方法都按照所写的方式传递提供的单元测试。
提前感谢您的帮助!如果有什么我可以澄清,请告诉我。我知道这是一个基本问题,但这是我的编码生涯中第一次谷歌没有给我一个好的答案!
我发布以下内容作为评论,但我想我也会把它放在这里,所以我也可以复制我的新代码:(如果不鼓励请告诉我,我会做出任何修改建议):
完全是@OHGODSPIDERS。对不起我不太清楚。我通读了链接,我想我现在明白我应该使用toArray(T [] a)版本。但是,当我尝试这样做时,Eclipse说我无法创建通用数组。但是,该方法究竟应该做什么呢? public T[] toArray(){
return this.toArrayList().toArray(new T[0]);
}