【发布时间】:2011-04-21 00:26:30
【问题描述】:
如何通过扩展 Abstract 集合来使用链表实现集合?如果是 Iterator,我必须使用 void remove 方法,并实现 this 以及 add 和 size 方法。
【问题讨论】:
标签: java collections linked-list
如何通过扩展 Abstract 集合来使用链表实现集合?如果是 Iterator,我必须使用 void remove 方法,并实现 this 以及 add 和 size 方法。
【问题讨论】:
标签: java collections linked-list
更多详情请查看Java doc for AbstractCollection:
实现一个不可修改的 集合,程序员只需要 扩展这个类并提供 迭代器的实现和 大小方法。 (迭代器返回 通过迭代器方法必须实现 有下一个和下一个。)
要实现可修改的集合, 程序员必须另外 覆盖这个类的 add 方法 (否则会抛出一个 UnsupportedOperationException),以及 迭代器返回的迭代器 方法必须另外实现其 删除方法。
public abstract int size()
public abstract Iterator<E> iterator()
迭代器定义了这个方法:
boolean hasNext()
E next()
void remove()
【讨论】: