A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© LiuKang 中级黑马   /  2013-12-3 10:09  /  2017 人查看  /  3 人回复  /   1 人收藏 转载请遵从CC协议 禁止商业使用本文

迭代器:把取出方式定义在集合的内部,可以直接访问集合内容的元素,取出方式被定义为内部类
每一个容器的数据结构不同,取出的动作细节也不一样,但是有共性的内容:判断和取出,可以将共性抽取
(比喻:电玩城取布娃娃的那个夹子,定义在容器内部)
List:元素是有序的,元素可以重复,该集 合体系有索引
常见方法:凡事可以操作角标的方法都是该体系特有的方法
增:add(index,element) addAll(index,Collection) 删:remove(index) 改:set(index,element)
查:get(index) subList(from,to) listItreator();
List集合特有的迭代器,ListIterator是Iterator的子接口,在迭代时不可以通过集合对象的方法操作集合的元素
ListIterator it = al.listIterator it.remove();it.add();
--ArrayList:底层的数据结构是数组结构,查询速度快,但是增删稍慢,线程不同步(效率高)默认10的空表,再加50%延长
file:///C:/Users/liukang/AppData/Local/Temp/ksohtml/wps_clip_image-925.png--LinkedList:底层是链表结构,增删速度很快,查询稍慢(特有方法addFirst();addLast();getFirst()可以获取元素但是不删除removeFirst()获取元素但是删除)
如果集合中没有元素,会出现异常。在JDK1.6出现了替代方法:offerFirst();PeakFirst();polllFirst();没有元素返回null
--Vector:底层是数组结构(元老,还没集合的时候就存在了)线程同步(都很慢,被ArrayList替代)100%延长。(枚举是其特有取出方式,和迭代器很像---其实枚举和迭代是一样的,出新的是因为旧的方法名啥的都长故用迭代器)
Set:元素是无序(存入和取出的顺序不一定一致),元素不可以重复。
--HashSet:底层数据结构是哈希表(哈希表按哈希值存)保证元素的唯一性,通过两个方法,hashCode和equals。如果HashCode值相同,才会判断equals是否为真
--TreeSet:
Set集合的功能和Collection是一致的

评分

参与人数 1技术分 +1 黑马币 +3 收起 理由
狼王 + 1 + 3 3个金币为奖励,好好加油。。。。.

查看全部评分

3 个回复

倒序浏览
好久没复习了,这是一个机会
回复 使用道具 举报
狼王 发表于 2013-12-3 10:19
好久没复习了,这是一个机会

恩恩,一定好好复习,嘿嘿
回复 使用道具 举报
ffffffffffffffffffffffffffffffffffffffffffffffffff
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马