你的位置:首页 > 软件开发 > Java > 彻底理解容器类(1)

彻底理解容器类(1)

发布时间:2017-03-28 12:00:34
JAVA容器类概述  java容器类是一系列存放元素的容器,日常生活中最主要使用的就是list,set和map等容器,这些容器的底层一般是基于数组或者是链表来实现的。我们先来看看java中容器类的接口和类的继承关系图(蓝色是接口和抽象类,红色是具体的实现,关注红色的继承结构,这样 ...

彻底理解容器类(1)

JAVA容器类概述

  java容器类是一系列存放元素的容器,日常生活中最主要使用的就是list,set和map等容器,这些容器的底层一般是基于数组或者是链表来实现的。我们先来看看java中容器类的接口和类的继承关系图(蓝色是接口和抽象类,红色是具体的实现,关注红色的继承结构,这样子能更好的深入容器本身)

彻底理解容器类(1)

  从图中可知道(只看我提到的容器的继承路线),容器类主要分为Collection和Map,Collection是list,set,Queue的父接口。Collection对象是可以产生一个迭代器对象(Iterator)。list有Arraylist和LinkedList的具体实现。Set有TreeSet,HashSet和LinkedHashedSet实现。Map主要有HashMap和SortedMap这2种实现。(注意这些容器的继承路线,这对理解源码有帮助)

  注意,容器类有2个接口Collection和Map,并不是只有一个Collection接口。

Collection接口认识

  collection接口中定义了基本的容器类的操作,看到接口的时候可以读出来,加深影响。暂时不讨论java8新增加的函数编程的接口,这样子可以更好的理解容器类本身。

public interface Collection<E> extends Iterable<E> {  /**   * @return the number of elements in this collection 返回元素个数   */   int size();  /**   * @return <tt>true</tt> if this collection contains no elements 返回真如果里面没有元素   */   boolean isEmpty();  /**   * @return <tt>true</tt> if this collection contains the specified 如果至少有一个相同元素的话就会真   *     element*/   boolean contains(Object o);  /**   * @return an <tt>Iterator</tt> over the elements in this collection 返回一个迭代器对象,迭代的顺序不做保证   */  Iterator<E> iterator();  /**   * 返回一个数组对象,数组对象中的元素都是安全的,修改collection的元素不会改变这个数组中的对象   * @return an array containing all of the elements in this collection   */  Object[] toArray();  /** 把元素放入到a参数中   * @return an array containing all of the elements in this collection 

原标题:彻底理解容器类(1)

关键词:

*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: admin#shaoqun.com (#换成@)。

可能感兴趣文章

我的浏览记录