11章、持有对象
本章主要介绍了各种容器:
1、List(ArrayList):
基于数组的List实现,提供随机访问,随机存储。
http://www.cnblogs.com/chenkaiwei/p/7978836.html
2、迭代器Iterator(基本使用):
(1)使用iterator()方法返回一个Iterator(此方法定于Collection)。Iterator准备好返回序列的第一个元素。
(2)使用next()获得序列中的下一个元素。
(3)使用hasNext()检查序列中是否还有元素
(4)使用remove()将迭代器最新返回的元素删除。
3、LinkedList:
基于链表的List实现,插入,删除等操作会优于ArrayList。比起ArrayList,LinkedList可以更好的构建基本的数据结构,如栈、队列、双端队列等。
4、Stack
后进后出(LIFO)的容器。
5、Set(通常使用HashSet)
(1)TreeSet:
(2)LinkedHashSet:
(3)HashSet:
6、Map(通常使用HashMap)
HashMap
成员变量:
//默认的初始化容器容量
static final int DEFAULT_INITIAL_CAPACITY = 1 << 4; // aka 16 //最大容器容量 static final int MAXIMUM_CAPACITY = 1 << 30; //默认的负载因子,用于扩展map static final float DEFAULT_LOAD_FACTOR = 0.75f; //当哈希函数不合理,造成链表太长,链表长度则超过8的时候,才会考虑转换成红黑树,从而加快检索 static final int TREEIFY_THRESHOLD = 8; //当红黑树的节点数量少于6的时候,就恢复为链表 static final int UNTREEIFY_THRESHOLD = 6; // static final int MIN_TREEIFY_CAPACITY = 64;
//序列号
private static final long serialVersionUID
//默认的初始容量
static final int DEFAULT_INITIAL_CAPACITY
static final int MAXIMUM_CAPACITY static final float DEFAULT_LOAD_FACTOR static final int TREEIFY_THRESHOLD static final int UNTREEIFY_THRESHOLD static final int MIN_TREEIFY_CAPACITY transient Node[] table transient java.util.Set entrySet transient int size transient int modCount int threshold final float loadFactor
7、适配器设计模式:
8、Queue
9、PriorityQueue