【发布时间】:2017-03-26 10:32:22
【问题描述】:
我想为我的 Customlist 实现 add 方法,该方法在 java 中实现 List。代码如下所示:
public class CustomList implements List{
private List list;
public boolean add(Object s) {
boolean check = false;
try {
System.out.println("LOG: now performing the addition of an object");
long startTime = System.nanoTime();
check = list.add(s);
long estimatedTime = System.nanoTime() - startTime;
System.out.println(estimatedTime);
System.out.println();
}
catch (Exception e) {
e.printStackTrace();
}
return check;
}
public CustomList(List l) {
list = l;
}
}
但是,当我在 main 方法中使用它时,它不起作用。似乎只有我在 Customlist 中的列表实际上添加了新对象,但在 main 方法中,它没有。我该如何解决这个问题,谢谢。 这是TestCases类中的主要方法:
public class TestCases {
private static CustomList t = new CustomList(new ArrayList());
public static void main(String[] args) throws IOException {
t.add("abcd");
for(Object temp : t) {
System.out.println(temp);
}
}
}
更新:我刚刚为每个循环添加了一个用于测试的循环,但它不会打印任何内容,并且出现空指针异常。
【问题讨论】:
-
你怎么知道它没有向
t添加对象? -
使用所有方法发布您的实际代码。您是如何检查 main 方法中的列表内容的?
-
我使用每个循环打印出 t 中的字符串,但出现空指针异常。
-
@DN96 我认为你不应该实现 List 你应该扩展 ArrayList
-
你还没有展示剩下的方法。您的 iterator() 方法可能是错误的。注意 List 是一个泛型类型。自 Java 5 以来,十多年前。
标签: java list add implementation