我的列表实现:
public class TestMyList implements List{
int index=0;
int size;
Object [] element;
public TestMyList(){
element=new Object[10];
}
@Override
public boolean add(Object ele) {
element[index++]=ele;
size=index;
return true;
}
}
实现我的自定义列表的类:
public class TestClass {
public static void main(String[] args) {
TestMyList list=new TestMyList();
list.add("hello");
list.add("i am here");
System.out.println(list.size());
System.out.println(list);
}
}
当我运行上面的程序时,它显示 mypack.TestMyList@2c84d9,而不是 [你好,我在这里]
请帮我解决这个问题
最佳答案
System.out.println(list);
当您调用System.out.println
时,显然会调用list
对象的toString()
方法。由于您没有 ovveride toString()
,因此它会调用默认实现。 Ovveride toString()
方法可以根据需要进行打印。
要实现,只需查看 ArrayList 的源代码并了解如何使用 toString() ovverriden。
关于java - 无法在我的自定义 arraylist 实现中显示列表值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31560359/