集合List、Set、Map的特点
集合List、Set、Map的特点
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
开发工具与关键技术:My Eclipse 10 ,Java
作者:陈显其
撰写时间:2019/5/5
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Java里有种工具类是用于存储数量不等的对象,并可以实现常用 的数据结构,如栈、队列等,这种类叫Java集合类,其中用的比较多的是List集合、Set集合和Map集合
List集合的特点是有顺序和可以存放重复元素,它有ArrayList、LinkedList和Vector(线程安全的)三个主要的实现类,其中最常用的是ArrayList类,List集合里的数据是可以重复的,可以放一样的数据,连null都可以放入多个
List集合是有序的,添加时的顺序是怎样的输出时的顺序就是怎样,也可以用Comparable和Comparator这两个排序接口进行自定义的排序
Set集合常用的实现类是HashSet类,,大多数时候使用Set集合时就是使用这个实 现类,HashSe通过对象的hashCode值决定该对象在HashSet中的存储位置HashSet不能保证元素的排列顺序,顺序可能与添加顺序不同,顺序也有可能发生变化。也只能放入一个null值,
HashSet类还有一个子类 LinkedHashSet,LinkedHashSet集合也是根据元素的 hashCode值来决定元素的存储位置,但它同时使用链表维护元素的次序,这样使得元 素看起来是以插入的顺序保存的
Map集合和List集合、Set集合都不一样,它以健值对的方式存储元素,一个健和一个值互相联系,可以通过该元素健去访问它的值,
Map集合的还有一个实现类TreeSet类,这个类是有序的,可以实现Comparable和Comparator这两种排序方式进行排序,