注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

我的博客

学如逆水行舟,不进则退!

 
 
 

日志

 
 
关于我

我崇拜伟人,但我从不追逐伟人,因为自知没有那么开阔的步伐!

网易考拉推荐
GACHA精选

java.util包的学习(一)  

2007-01-12 15:32:10|  分类: 学习 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

(一)Iterator:public interface Iterator
    对集合进行迭代的迭代器,代替了 Java Collections Framework 中的 Enumeration(迭代器允许调用方在迭代期间从集合移除元素,而枚举不行).

1、Collection:public interface Collection extends Iterator
    集合层次中的根接口。Collection 表示一组对象,这些对象也称为 collection 的元素
(1)list:public interface List extends Collection

    此接口的用户可以对列表中每个元素的插入位置进行精确地控制。用户可以根据元素的整数索引(基于0)访问元素,并搜索列表中的元素。
    列表通常允许重复的元素.
    List 接口提供了两种(indexOf和laseIndexOf)搜索指定对象的方法。从性能的观点来看,应该小心使用这些方法。在很多实现中,它们将执行高开销的线性搜索。

  • ArrayList:public class ArrayList extends AbstractList implements List,RandomAccess,Cloneable,Serializable 
       对list接口的大小可变的数组功能的实现。
       实现了所有可选列表操作,并允许包括 null 在内的所有元素,另外此类还提供一些方法来操作内部用来存储列表的数组的大小。
       此类是不同步的,如果多个线程同时访问一个 ArrayList 实例,而其中至少一个线程从结构上修改了列表,那么它必须 保持外部同步。(结构上的修改是指任何添加或删除一个或多个元素的操作,或者显式调整底层数组的大小;仅仅设置元素的值不是结构上的修改。)一般通过对自然封装该列表的对象进行同步操作来完成。如不存在这样的对象,则应使用 Collections.synchronizedList 方法将该列表“包装”起来。这最好在创建时,以防止意外对列表进行不同步的访问:List list = Collections.synchronizedList(new ArrayList(...));
       在迭代器创建之后,如果从结构上对列表进行修改,除非通过迭代器自身的 removeadd 方法,其他任何时间任何方式的修改,迭代器都将抛出 ConcurrentModificationException。迭代器的快速失败行为不能得到保证,一般来说,存在不同步的并发修改时,不可能作出任何硬性保证。快速失败迭代器尽最大努力抛出 ConcurrentModificationException
        在构造列表对象是,如果没有指定初始容量,会构建一个始容量为 10 的空列表;如果构造带有集合,则构建一个指定 collection 大小的 110%的始容量。
  • LinkedList:public class LinkList extends AbstractSequentialList implements List,Queue,Cloneable,Serializable
        List 接口的链接列表实现.实现所有可选的列表操作,并且允许所有元素。除了实现 List接口外,LinkedList 类还为在列表的开头及结尾 get、removeinsert 元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列 .

    此类实现 Queue 接口,为 addpoll(移除) 等提供先进先出队列操作。其他堆栈和双端队列操作可以根据标准列表操作方便地进行再次强制转换。它们比等效列表操作运行稍快。所有操作都是按照双重链接列表的需要执行的。

此类是不同步的.在迭代器创建之后,如果从结构上对列表进行修改,除非通过迭代器自身的 removeadd 方法,其他任何时间任何方式的修改,迭代器都将抛出 ConcurrentModificationException。迭代器的快速失败行为不能得到保证,一般来说,存在不同步的并发修改时,不可能作出任何硬性保证。快速失败迭代器尽最大努力抛出 ConcurrentModificationException

  • Vector:public class Vector extends AbstractList mplements List,RandomAccess,Cloneable,Serializable
        Vector 类可以实现可增长的对象数组. 与数组一样,它包含可以使用整数索引进行访问的组件。但是,Vector 的大小可以根据需要增大或缩小,以适应创建 Vector 后进行添加或移除项的操作。Vector 是同步的.

(2)Set:
  
Public interface Set extends Collection 一个不包含重复元素的 collection。

(二)Enumeration:public interface Enumeration
此接口的功能与 Iterator 接口的功能是重复的。此外,Iterator 接口添加了一个可选的移除操作,并使用较短的方法名。

  评论这张
 
阅读(104)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017