欢迎来到天天文库
浏览记录
ID:51766855
大小:914.50 KB
页数:38页
时间:2020-03-05
《尚硅谷_佟刚_Java基础_Java集合.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、Java集合讲师:佟刚新浪微博:尚硅谷-佟刚本章内容Java集合概述Collection接口Iterator接口SetListMapCollections工具类Enumeration本章内容Java集合概述Collection接口Iterator接口SetListMapCollections工具类EnumerationJava集合概述Java集合就像一种容器,可以把多个对象的引用放入容器中。Java集合类可以用于存储数量不等的多个对象,还可用于保存具有映射关系的关联数组Java集合可分为Set、List和Map三种体系Set:无序、不可重复的集
2、合List:有序,可重复的集合Map:具有映射关系的集合在Java5之前,Java集合会丢失容器中所有对象的数据类型,把所有对象都当成Object类型处理;从Java5增加了泛型以后,Java集合可以记住容器中对象的数据类型Java集合概述Collection接口Collection接口是List、Set和Queue接口的父接口,该接口里定义的方法既可用于操作Set集合,也可用于操作List和Queue集合:hasNext()next()hasNext()使用Iterator接口遍历集合元素Iterator接口主要用于遍历Collection集
3、合中的元素,Iterator对象也被称为迭代器Iterator接口隐藏了各种Collection实现类的底层细节,向应用程序提供了遍历Collection集合元素的统一编程接口Iterator仅用于遍历集合,Iterator本身并不提供承装对象的能力。如果需要创建Iterator对象,则必须有一个被迭代的集合。使用foreach循环遍历集合元素Java5提供了foreach循环迭代访问Collection本章内容Java集合概述Collection接口Iterator接口SetHashSetLinkedHashSetTreeSetListMap
4、Collections工具类EnumerationSet集合Set集合不允许包含相同的元素,如果试把两个相同的元素加入同一个Set集合中,则添加操作失败。Set判断两个对象是否相同不是使用==运算符,而是根据equals方法HashSetHashSet是Set接口的典型实现,大多数时候使用Set集合时都使用这个实现类。HashSet按Hash算法来存储集合中的元素,因此具有很好的存取和查找性能。HashSet具有以下特点:不能保证元素的排列顺序HashSet不是线程安全的集合元素可以使null当向HashSet集合中存入一个元素时,HashSe
5、t会调用该对象的hashCode()方法来得到该对象的hashCode值,然后根据hashCode值决定该对象在HashSet中的存储位置。如果两个元素的equals()方法返回true,但它们的hashCode()返回值不相等,hashSet将会把它们存储在不同的位置,但依然可以添加成功。hashCode()方法HashSet集合判断两个元素相等的标准:两个对象通过equals()方法比较相等,并且两个对象的hashCode()方法返回值也相等。如果两个对象通过equals()方法返回true,这两个对象的hashCode值也应该相同。重写h
6、ashCode()方法的基本原则在程序运行时,同一个对象多次调用hashCode()方法应该返回相同的值当两个对象的equals()方法比较返回true时,这两个对象的hashCode()方法的返回值也应相等对象中用作equals()方法比较的Field,都应该用来计算hashCode值LinkedHashSetLinkedHashSet是HashSet的子类LinkedHashSet集合根据元素的hashCode值来决定元素的存储位置,但它同时使用链表维护元素的次序,这使得元素看起来是以插入顺序保存的。LinkedHashSet性能插入性能略
7、低于HashSet,但在迭代访问Set里的全部元素时有很好的性能。LinkedHashSet不允许集合元素重复。本章内容Java集合概述Collection接口Iterator接口SetHashSetLinkedHashSetTreeSetListMapCollections工具类EnumerationTreeSetTreeSet是SortedSet接口的实现类,TreeSet可以确保集合元素处于排序状态。Comparatorcomparator()Objectfirst()Objectlast()Objectlower(Objecte)Obj
8、ecthigher(Objecte)SortedSetsubSet(fromElement,toElement)SortedSetheadSet(to
此文档下载收益归作者所有