关于java集合框架接口RandomAccess的理解

RandomAccess接口是一个空接口,空接口的作用一般起到一个标识作用,比如:Serializable 接口。
RandomAccess接口里面的文档说明大致意思:给可以提供随机访问的List实现去标识一下,这样使用这个List的程序在遍历这种类型的List的时候可以有更高效率。仅此而已。
这句话隐含的意思就是只要支持快速随机访问的集合类都应该实现这个接口,那么与之对应的支持顺序访问的集合类就不应该实现这个接口。

例如

 

 

所以,我们在遍历List之前,可以用 if( list instanceof RandomAccess ) 来标识一下,选择用哪种遍历方式。就这点小技巧。

例如Collections里的fill方法

 

posted @ 2017-04-05 16:12  夏威夷8080  阅读(362)  评论(0编辑  收藏  举报