abstractcollection抽象类提供了collection的骨架实现,collection分析请看:
http://blog.csdn.net/treeroot/admin/referrers.aspx?entryid=99591 【相关文章:指针及其语义和运用】 【扩展阅读:Oracle学习笔记之二----查询】这里直接看它的代码是如何实现的. 【扩展信息:用 VC 写 CRC32 DLL 给VB】 public abstract iterator iterator(); 该方法没有实现. public abstract int size(); 该方法没有实现. public boolean isempty() { return size() == 0; } 非常简单,直接调用size()方法返回大小,如果是0就认为是空集合. 你不会觉得奇怪吧,size()方法没有实现,怎么可以调用呢?因为这个是抽象类,不可以实例化的,具体的时候调用的是子类中的实现. public boolean contains(object o) { iterator e = iterator(); if (o==null) { while (e.hasnext()) if (e.next()==null) return true; } else { while (e.hasnext()) if (o.equals(e.next())) return true; } return false; } 代码不复杂,也是调用自己的方法iterator,遍历集合,如果找到了就返回true,在没找到的情况下是要遍历整个集合的.对于null值的情况一定要放在if里面,而不能放在else里面. public object[] toarray() { object[] result = new object[size()]; iterator e = iterator(); for (int i=0; e.hasnext(); i++) result[i] = e.next(); return result; } ... 下一页