概述
就学习经验,浅谈Java中的Set,List, Map的区别,对java中的人集合的理解是想对于数组。
数组是大小固定的,并且同一个数组只能存放类型(基本类型和引用类型)一样的数据,Java集合可以存储和操作数数目并不固定的一组数据。
所有的java结集合都位于java.util 包中,Java中集合只能存放引用类型的数据,不能存放基本数据类型。
java集合主要分为三种了类型:
:Set(集)
:List (列表)
:Map (映射)
Collection接口:Collection是最基本的集合接口,声明了适用于Java集合(只包括Set和list)的通用方法。
Set和 lIst 都继承了Collection,Map
Collection接口的方法:
boolean add(Objection o )
void clear();
boolean isEmpty();
boolean contains(Objection o)
Iterartor iterator()
is Size();
他们之间的区别:
LIst(列表): LIst 的特征是其元素以线性方式存储,集合中可以存储重复对象。
ArrayList(): 代表长度可以改变的数组,可以对元素进行随机的访问。向Arraylist()中插入和删除元素的速度慢
LinkedList() : 在实现中采用链表数据结构,插入和删除速度快,访问速度慢
对于LIst的随机访问来说,就是只随机来检索位于特定位置的元素。
LIst的get(int index)方法放回集合中有参数index指定的索引位置的对象。
下表从0开始,最基本的两种检索集合中的所有对象的方法。
Map是一种把健和值对象映射的集合,它的每一个元素都包含一对建对象和值对象。
Map中没有继承于Collection接口,从Map集合中检索元素时,只要给出对象,就会返回对应的值对象。
Map中的健对象不能吃重复,也就是说任意两个键对象通过equals()方法比较的结果都是false,但是可以将任意多个键独享映射到同一个值上面。
ArrayList:由数组实现的List。允许对元素进行快速随机访问,但是向List中间插入与移除元素的速度很慢。ListIterator只应该用来由后向前遍历 ArrayList,而不是用来插入和移除元素。因为那比LinkedList开销要大很多。
LinkedList :对顺序访问进行了优化,向List中间插入与删除的开销并不大。随机访问则相对较慢。(使用ArrayList代替。)还具有下列方 法:addFirst(), addLast(), getFirst(), getLast(), removeFirst() 和 removeLast(), 这些方法 (没有在任何接口或基类中定义过)使得LinkedList可以当作堆栈、队列和双向队列使用。
最后
以上就是威武大碗为你收集整理的浅谈Java中的Set,List,Map的区别的全部内容,希望文章能够帮你解决浅谈Java中的Set,List,Map的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复