集合的概述
Java集合类存放于Java.util包中,是一个用来存放对象的容器。
1.集合只能存放对象,如果存放一个int型的数据,会被自动转换成Integer类后存入。
2.集合存放的是对象的引用,对象本身还是存放在堆内存中。
3.集合可以存放不同类型,不限数量的数据类型。
4.在JDK5之后,增加了泛型,集合可以记住容器中对象的数据类型。
Java集合可以分为Set,List和Map三种体系
1.Set类,无序,不可重复的集合。
2.List类,有序,可重复的集合。
3.Map类,具有映射关系的集合。
HashSet
HashSet是按照Hash算法来存储集合中的元素,因此具有很好的存储和查找性能。
HashSet具有以下特点:
1.元素的排列顺序不是完全按照存放顺序。
2.HashSet不是线程安全的。
3.集合元素可以是null。
4.Set集合存放的值是不可重复的。
TreeSet
TreeSet是SortedSet接口的实现类,TreeSet可以确保集合元素处于排序状态。
TreeSet支持两种排序算法:自然排序和定制排序。默认为自然排序。
List与ListArray
1.List代表一个元素有序,且可重复的集合,集合中每个元素都有其对应的顺序索引。
2.List允许使用重复元素,可以通过索引来访问指定位置的集合元素。
3.默认按照元素的添加顺序来设置元素的索引。
4.List集合里添加了一些根据索引来操作集合元素的方法。
Map
1.Map用于保存具有映射关系的数据。因此Map集合里保存着两组值,一组值保存Map里的Key,另一组保存Map里的value。
2.Map中的Key不允许重复。
3.Map中Key和Value存在一对一的对应关系。
操作集合的工具类:Collections
Collections是一个操作Set,List和Map等集合的工具类。