W•y■'Ta,Ta2>).NM<4黑马程序员一集合框架集合:有时也被称作容器,是对彖的持有者,它们可以以有助于高效访问的方式来储存和组织对象。集"> W•y■'Ta,Ta2>).NM<4黑马程序员一集合框架集合:有时也被称作容器,是对彖的持有者,它们可以以有助于高效访问的方式来储存和组织对象。集" />
欢迎来到天天文库
浏览记录
ID:42845302
大小:112.24 KB
页数:5页
时间:2019-09-22
《黑马程序员——集合框架》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、二t**(“""几心4曲4•*giar:・・axi;<.4tn和ff.Cccf«nUHX、t>W•y■'Ta,Ta2>).NM<4黑马程序员一集合框架集合:有时也被称作容器,是对彖的持有者,它们可以以有助于高效访问的方式来储存和组织对象。集合框架继承关系:"・S・t冲.WHMkRUHnti!.1auUiI・匕Kl・1RrrttKM2*at*r算盘怙内.•一二“心ua^tfi'宀‘广getf丽aAW・鼻战兀仇H1W/U上«的啾e^£»:rwmfMO.rmcwcLc^4J..4(•■:R・kI•tft4
2、f3、K£&:4aK^JOKl>tal肿1*0〉•艸••區・融・>3Collection:是集合框架的根接口。所有的集合都继承Collectiono其中泄义了集合中常用的方法,如add、remove>size、toArraysIterator等。ListvE>:集合特点有序,元素可以重复。继承了Collection,增添了许多有关索引的方法。特有方法。凡是可以操作角标的方法都是该体系特有的方法。增add(index,element);addAII(index,Collection);删remove(index);改set(index,eleme4、nt);查get(index):subList(from,to);listlterator();intindexOf(obj):获取指定元素的位置。Listiteratorlistlterator();ArrayList:底层的数据结构使用的是数组结构。特点:查询速度很快。但是增删稍慢。线程不同步。是一个不错的基本列表实现,它将其元素存放在一个数组屮。它有一个容量,它表示在不需要为更大的数组分配内存的情况下所能容纳的元素数量。当空间用尽时,就必须重新分配一个数组以替代原数组。所以正确地设置初始容量可以提高性能。如果数据的初始大小远远小于最5、终的大小,那么可以将初始容量设置的更大一点。减少使用更大数组替代原数组的次数。但是如果定义的太大又浪费空间。ArrayList构造器:publicArrayList():使用默认容量创建一个新的ArrayList集合;publicArrayList(inta):定义一个新的ArrayList集合,不用改变就可以存放a个元素;publicArrayList(Collectioncoll):创建一个新的ArrayList集合,它的初始内容就是coll的内容。LinkedListvE>:底层是双向链表。增删速度很快,查询稍慢。线6、程不同步。LinkedList特有方法:addFirst();addLast();getFirst();getLast();获取元素,但不删除元素。如果集合中没有元素,会出现NoSuchElementExceptionremoveFirst();removeLast();获取元素,但是元素被删除。如果集合屮没有元素,会出现NoSuchElementException在JDK1.6出现了替代方法。offerFirst();offerLast();peekFirst();peekLast();获取元素,但不删除元素。如果集合中没有元素,会返回nul7、l。pollFirst();pollLast();获取元素,但是元素被删除。如果集合中没有元素,会返回null。Set:集合特点无序,元素不可以重复。继承了Collection,为其方法提供了更具体的契约,但是没有添加新的方法。常用集合:TreeSet和hashSetvE〉。TreeSet:可以对Set集合中的元素进行排序。底层数据结构是二叉树。保证元素唯一性的依据:compareTo方法return0.TreeSet排序的第一种方式:让元素自身具备比较性。元素需要实现Comparable接口,覆盖compareTo方法。也种8、方式也成为元素的自然顺序,或者叫做默认顺序。TreeSet的第二种排序方式。当元素自身不具备比较性时,或考具备的比较性不是所需要的。这时就需要让集合自身具备比较性。在集合初始化时,就有了比较方式。hashSet:底层数据结构是哈希表。是线程不安全的。不同步。HashSet是如何保证元素唯一性的呢?是通过元素的两个方法,hashCode和equals来完成。如果元素的HashCode值相同,才会判断equals是否为true。如果元素的hashcode值不同,不会调用equals。注意,对于判断元素是否存在,以及删除等操作,依赖的方法是元素9、的hashcode和equals方法。总结:在自定义一个类的时候我们一般要定义类的特有方法,同时我们还有实现Comparable接口的compareT
3、K£&:4aK^JOKl>tal肿1*0〉•艸••區・融・>3Collection:是集合框架的根接口。所有的集合都继承Collectiono其中泄义了集合中常用的方法,如add、remove>size、toArraysIterator等。ListvE>:集合特点有序,元素可以重复。继承了Collection,增添了许多有关索引的方法。特有方法。凡是可以操作角标的方法都是该体系特有的方法。增add(index,element);addAII(index,Collection);删remove(index);改set(index,eleme
4、nt);查get(index):subList(from,to);listlterator();intindexOf(obj):获取指定元素的位置。Listiteratorlistlterator();ArrayList:底层的数据结构使用的是数组结构。特点:查询速度很快。但是增删稍慢。线程不同步。是一个不错的基本列表实现,它将其元素存放在一个数组屮。它有一个容量,它表示在不需要为更大的数组分配内存的情况下所能容纳的元素数量。当空间用尽时,就必须重新分配一个数组以替代原数组。所以正确地设置初始容量可以提高性能。如果数据的初始大小远远小于最
5、终的大小,那么可以将初始容量设置的更大一点。减少使用更大数组替代原数组的次数。但是如果定义的太大又浪费空间。ArrayList构造器:publicArrayList():使用默认容量创建一个新的ArrayList集合;publicArrayList(inta):定义一个新的ArrayList集合,不用改变就可以存放a个元素;publicArrayList(Collectioncoll):创建一个新的ArrayList集合,它的初始内容就是coll的内容。LinkedListvE>:底层是双向链表。增删速度很快,查询稍慢。线
6、程不同步。LinkedList特有方法:addFirst();addLast();getFirst();getLast();获取元素,但不删除元素。如果集合中没有元素,会出现NoSuchElementExceptionremoveFirst();removeLast();获取元素,但是元素被删除。如果集合屮没有元素,会出现NoSuchElementException在JDK1.6出现了替代方法。offerFirst();offerLast();peekFirst();peekLast();获取元素,但不删除元素。如果集合中没有元素,会返回nul
7、l。pollFirst();pollLast();获取元素,但是元素被删除。如果集合中没有元素,会返回null。Set:集合特点无序,元素不可以重复。继承了Collection,为其方法提供了更具体的契约,但是没有添加新的方法。常用集合:TreeSet和hashSetvE〉。TreeSet:可以对Set集合中的元素进行排序。底层数据结构是二叉树。保证元素唯一性的依据:compareTo方法return0.TreeSet排序的第一种方式:让元素自身具备比较性。元素需要实现Comparable接口,覆盖compareTo方法。也种
8、方式也成为元素的自然顺序,或者叫做默认顺序。TreeSet的第二种排序方式。当元素自身不具备比较性时,或考具备的比较性不是所需要的。这时就需要让集合自身具备比较性。在集合初始化时,就有了比较方式。hashSet:底层数据结构是哈希表。是线程不安全的。不同步。HashSet是如何保证元素唯一性的呢?是通过元素的两个方法,hashCode和equals来完成。如果元素的HashCode值相同,才会判断equals是否为true。如果元素的hashcode值不同,不会调用equals。注意,对于判断元素是否存在,以及删除等操作,依赖的方法是元素
9、的hashcode和equals方法。总结:在自定义一个类的时候我们一般要定义类的特有方法,同时我们还有实现Comparable接口的compareT
此文档下载收益归作者所有