1

如何在不使用任何 Java 库的情况下在 java 中实现简单的 OOP 列表?

Java列表的典型特征是什么?

如果有人告诉您有关 java 的“列表”,您会怎么想?我不知道它是链接列表还是其他列表。

4

4 回答 4

1

您可以查看 javadocsjava.util.List并查看它定义了哪些方法来获得 indea。然后,您可以考虑自己的实现。

上面的接口有很多实现:ArrayList并且LinkedList只是一些最流行的。

于 2012-09-03T18:19:27.870 回答
1

不使用任何 Java 库?

你可以创建一个对象

class myList{
  myList nextitem;
  Info moreInfo
}

myList l = new myList();
于 2012-09-03T18:22:54.100 回答
0

Java 列表的典型特征在标准列表接口中定义。如果你以这样的方式实现这个接口,代码

List<Foo> bar = new ArrayList<Foo>();
// Other code that calls methods from the List interface, using bar

List<Foo> bar = new YourCustomList<Foo>();
// The same other code

行为相同(当然,其他代码练习了您关心的列表功能),那么我认为您已经实现了一个 Java 列表。

我注意到您不必实现java.util.List 中的所有UnsupportedOperationException方法(您未实现的方法可以 throw ),但您应该倾向于实现所有这些方法,除非您的列表不同于“标准” " ArrayList 呈现的列表界面。例如,只读列表应该UnsupportedOperationException尝试添加或删除元素。

于 2012-09-03T18:21:23.907 回答
0

主要功能是提供添加不受限制的可能性 - 通过创建参数 - 元素的数量,所以如果没有任何其他要求(访问时间等),只需在添加和删除期间通过动态调整大小来增强 []手术。

但是.. List 是集合的一部分,所以如果你想满足这个“要求”,你应该实现所需的功能。

于 2012-09-03T18:45:05.060 回答