- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
java集合(一)——数据结构详解
java集合(一)——数据结构详解
(一) 集合接口
1.集合的接口和实现分离
与其他的数据结构类库相似的,java的集合类库也采用了这种接口和实现分离的方法。
这种方法的好处是不言而喻的。当你要实例化一个队列时,如果你想去选择链式结构或者循环数组或其他不同的实现方法,只需为集合接口引用不同的实现类即可。
QueueString qe1 = new LinkedList();//LinkedList是链表实现队列
QueueString qe2 = new ArrayDeque();//ArrayDeque是循环数组实现队列
同样是Queue的实现类,但采用了不同的方式。
2.Collection接口
在集合类库中,最基本的接口是Collection接口。
Collection接口可以理解成集合类库中的树根,所有的其他类都是从之演变出来的。因为Colleaction是一个泛型接口,所以在这个泛型接口中java类库的设计者添加了许多的方法,所有的实现类都必须去实现这些方法。
int size()
//返回此 collection 中的元素数。
//如果此 collection 包含的元素大于 Integer.MAX_VALUE,则返回 Integer.MAX_VALUE。
boolean isEmpty()
//如果此 collection 不包含元素,则返回 true。
boolean contains(Object o)
//当且仅当此 collection 至少包含一个满足 (o==null ? e==null : o.equals(e)) 的元素 e 时,返回 true。
IteratorE iterator()
//返回在此 collection 的元素上进行迭代的迭代器。
//关于元素返回的顺序没有任何保证,除非此 collection 是某个能提供保证顺序的类实例。
Object[] toArray()
//返回包含此 collection 中所有元素的数组。
//如果 collection 对其迭代器返回的元素顺序做出了某些保证,那么此方法必须以相同的顺序返回这些元素。
//返回的数组将是“安全的”,因为此 collection 并不维护对返回数组的任何引用。
//调用者可以随意修改返回的数组。
//此方法充当了基于数组的 API 与基于 collection 的 API 之间的桥梁。
boolean add(E e)
//确保此 collection 包含指定的元素。如果此 collection 由于调用而发生更改,则返回 true。
//如果此 collection 不允许有重复元素,并且已经包含了指定的元素,则返回 false。
boolean remove(Object o)
//如果此 collection 包含一个或多个满足 (o==null ? e==null : o.equals(e)) 的元素 e,则移除这样的元素。
//如果此 collection 包含指定的元素(或者此 collection 由于调用而发生更改),则返回 true 。
boolean containsAll(Collection? c)
//如果此 collection 包含指定 collection 中的所有元素,则返回 true。
boolean addAll(Collection? extends E c)
//将指定 collection 中的所有元素都添加到此 collection 中。
//如果在进行此操作的同时修改指定的 collection,那么此操作行为是不确定的。
boolean removeAll(Collection? c)
//移除此 collection 中那些也包含在指定 collection 中的所有元素。
//此调用返回后,collection 中将不包含任何与指定 collection 相同的元素。
void clear()
//移除此 collection 中的所有元素。
boolean retainAll(Collection? c)
//仅保留此 collection 中那些也包含在指定 collection 的元素。
//移除此 collection 中未包含在指定 collection 中的所有元素。
以上这些方法将会在所有的集合数据结构中出现,记住他们的作用,无论是哪个数据结构,只要调用他们准没有错。除此之外真的要赞叹Java API编写者的水平,方法功能的介绍用最少的语言来说的滴水不漏,这种超强的概括性,水平之高可见一斑。尤其像remove中判断的方式,书写简洁美观,包含存在null的情况,真的是非常值得学习。(特殊的,表不是从Collection接口实现的
您可能关注的文档
- 3.3项目实施教程.ppt
- 3.4解直角三角形教程.ppt
- 3.508第八章与数据库连接教程.doc
- 3.5运动电荷在磁场中受到的力教程.docx
- FCD-JTHML-III系列说明书.doc
- 3.7各工种安全操作规程教程.doc
- GA数据分析.pptx
- 3.4生产现场管理教程.ppt
- 3.5虚拟存储器-吴学涯教程.pptx
- 3.8定期识别与采购有关的风险制度教程.doc
- java测试题3及答案 .pdf
- 二年级小学生评价.pdf
- (新课标新教材)新人教版初中英语七年级上册Unit7HappyBirthday!第1课时Pronunciation《SectionAHowdowecelebratebirthdays1a》说.docx
- 小学综合实践活动_商标的奥秘教学课件设计.ppt.pptx
- 中医护理学科建设ppt.pptx
- 乌鲁木齐准东产业园产业发展总体规划环境影响评价报告书-拟报批稿_1710496884081.pdf
- [中考专题]2022年江苏省南通市中考数学历年真题汇总 卷(Ⅲ)(含答案及.pdf
- JAVA试验3答案 _原创精品文档.pdf
- 一年级教师节主题班会 .pdf
- Unit 3 Weather第3课时公开课教案【英语人教三起PEP版四年级下册】.pdf
文档评论(0)