Java容器小结【Java学习笔记】

容器体系结构(其中的Vector和Stack类现在已经极少使用):

Collection: 存放独立元素的序列。

Map:存放key-value型的元素对。(这对于一些需要利用key查找value的程序十分的重要!)



最常用的四个容器:

LinkedList :其数据结构采用链表,优势:删除和添加的效率很高;不足:随机访问元素时效率较ArrayList类低【改快读慢】。

ArrayList:其数据结构采用线性表,优势:访问和查询十分方便;不足:添加和删除的时候效率很低【读快改慢】。

HashSet: Set类不允许其中存在重复的元素(集),无法添加一个重复的元素(Set中已经存在)。HashSet利用Hash函数进行了查询效率上的优化,其contain()方法经常被使用,以用于判断相关元素是否已经被添加过。

HashMap: 提供了key-value的键值对数据存储机制,可以十分方便的通过键值查找相应的元素,而且通过Hash散列机制,查找十分的方便。


迭代器Iterator<E>

迭代器是一种设计模式,可以遍历并选择序列中的对象,而开发人员并不需要了解该序列的底层结构。迭代器通常被称为轻量级对象,因为创建它的代价小。

JAVAIterator<E>功能比较简单,并且只能单向移动。

相对Iterator而言,for()循环遍历的速度较快点。而Iterator则比较通用,且序列的内部状态都由Iterator维护。

函数

功能

hasNext()

检查序列下一个元素是否存在。

next()

获取序列下一个元素。

remove()

将迭代器新返回的元素删除。



1. Collection接口:

存取方式:
    2. 子接口Set:数据对象无顺序,不重复(equals)
    3. 子接口List:数据对象有顺序,可重复

4. Map接口
定义了存储“键(key)—值(value)映射对”的方法。
HashMap(哈希表做索引)、TreeMap(二叉树做索引)等

5. Iterator(迭代器)接口:
  标准、统一的遍历方式
  多态(第三章内容)

EnhanceFor:增强的for循环,了解即可

6. Comparable接口

如何选择数据结构(了解,根据实际情况选择):
ArrayList:读快改慢
LinkedList:读慢改快
Hash:二者之间

Auto-boxing/unboxing:
自动打包/解包

泛型(Generic)【非常重要】



Reference:

1. http://www.cnblogs.com/airwindow/archive/2012/06/24/2560196.html

2. http://www.cnblogs.com/xuemaxiongfeng/p/3282938.html



to be continued ...

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值