Lession 6 集合框架

来源:互联网 发布:淘宝网中老年女装外套 编辑:程序博客网 时间:2024/06/03 19:13


Lession 6 集合框架

1.当向ArrayList添加一个对象的时,实际上就是将该对象防止到ArrayList底层所维护的数组当中,当向LinkedList中添加一个对象时,实际上LinkedList内部会生成一个Entry对象,该Entry对象的结构为:

a) Entry{

Entry previous;

Object element;

Entry next;

}

其中Object类型的元素element就是我们向LinkedList中添加的元素,然后Entry又构造好了向前和向后的引用previousnext,最后将生成的这个Entry对象加入到链表中。换句话说,LinkedList中维护的是一个个Entry对象。

备注:LinkedList底层的数据结构其实是双向链表

2.当使用HashSet时,hashCode()方法就会得到调用,判断已经存储在集合中的对象的hashCode值是否与新增加的对象的hashCode值一致;如果不一致的话,就直接加进去;如果一致,再进行equals方法的比较,equals方法如果赶回true,表示对象已经加入过了,就不会再增加新的对象,否则加进去。

3.良好的习惯就是如果我们重写了equals方法,那么最好也重写hashCode()方法,反之亦然

4.Map接口(key- value):MapkeySet()方法会返回key的集合,因为Map的键是不能重复的,因此keySet()方法的返回类型是Set;而Map的值是可以重复的,因此values()方法的返回类型是Collection,可以容纳重复的元素。

5.只要有Tree修饰的集合都要自己实现它们对象的Comparable接口;比如TresSetTreeMap

Tree表示含有排序的功能。

6.Map接口有几个子类比较特殊:Properties(专门配置属性文件的)

7.读取配置文件:

a) 普通java程序使用ClassLoader

b) Servlet程序可以使用ServletContext

 

 

0 0
原创粉丝点击