当前位置:编程学习 > JAVA >>

Java集合与容器有什么区别于类型

补充:Java集合与容器有什么区别与联系?
答案:1.集合类是放在java.util.*;这个包里。集合类存放的都是对象的引用,而非对象本身,为了说起来方便些,我们称集合中的对象就是指集合中对象的引用(reference)。引用的概念大家不会忘了吧,在前边我们讲数据类型时讲的。     集合类型主要有3种:set(集)、list(列表)、map(映射)和Queue(队列)。//队列为jdk5中的加上的     (1)    Set集(set)是最简单的一种集合,它的对象不按特定方式排序,只是简单的把对象加入集合中,就像往口袋里放东西。对集中成员的访问和操作是通过集中对象的引用进行的,所以集中不能有重复对象。我们知道数学上的集合也是Set这个,集合里面一定是没有重复的元素的。 (2)List列表(List)的主要特征是其对象以线性方式存储,没有特定顺序,只有一个开头和一个结尾,当然,它与根本没有顺序的Set是不同的。它是链表嘛,一条链肯定有顺序这个顺序就不一定了。      (3)Map         映射(Map),这个在java里不是地图的意思,其实地图也是映射哈。它里面的东西是键-值对(key-value)出现的,键值对是什么呢?举个例子,比如我们查字典,用部首查字法。目录那个字就是键,这个字的解释就是值。键和值成对出现。这样说可以理解吧。这也是很常用的数据结构哦。       (4)Queue          在jdk5.0以前,通常的实现方式是使用java.util.List集合来模仿Queue。Queue的概念通过把对象添加(称为enqueuing的操作)到List的尾部(即Queue的后部)并通过从List的头部(即Queue的前部)提取对象而从 List中移除(称为dequeuing的操作)来模拟。你需要执行先进先出的动作时可以直接使用Queue接口就可以了。           这4个东西,有时候功能还不太完善,需要有些子类继承它的特性。Set的子接口有TreeSet,SortedSet,List的有ArrayList等,Map里有HashMap,HashTable等,Queue里面有BlockingQueue等。2.容器可以管理对象的生命周期、对象与对象之间的依赖关系,您可以使用一个配置文件(通常是XML),在上面定义好对象的名称、如何产生(Prototype 方式或Singleton 方式)、哪个对象产生之后必须设定成为某个对象的属性等,在启动容器之后,所有的对象都可以直接取用,不用编写任何一行程序代码来产生对象,或是建立对象与对象之间的依赖关系。容器是一个Java 所编写的程序,原先必须自行编写程序以管理对象关系,现在容器都会自动帮您作好。Java容器类包含List、ArrayList、Vector及map、HashTable、HashMap
  ArrayList和HashMap是异步的,Vector和HashTable是同步的,所以Vector和HashTable是线程安全的,而 ArrayList和HashMap并不是线程安全的。因为同步需要花费机器时间,所以Vector和HashTable的执行效率要低于 ArrayList和HashMap。1、容器:能装对象的东西。数组知道吧?int型的数组就可以装int型的数据。 而容器呢,可以装对象,以及所有的数据嘛~2、容器的使用一般不是通过接口来使用的,而是通过其实现类来使用。3、容器接口大致归纳为:list,set还有map。具体的实现类为:ArrayList,LinkedList,TreeSet,HashSet,HashMap,TreeMap等。当然,要一次讲清楚是很难的。多看书吧。


如果帮助到您,请记得采纳为满意答案哈,谢谢!祝您生活愉快! vae.la
Set也是容器的一种,容器可以有List,Set,Map等,根据不同的功能需求使用不同的容器,如果要求不重复,用Set;

楼上的回答可归纳为最后四个字:“多看书吧”;

归纳,你不知道很多专有名词不重要,只要会用就行了

有区别吗??? 容器就是可以存储数量可变数据的集合。。。

通俗点说就是装东西的

容器通俗的理解和从字面的理解 就是用来装东西的器皿 我们把能装东西的这种器皿叫做容器

那么java当中的集合可以理解为是对容器的一种实现 也就是用来存放数据的容器或者器皿

 

 

java里容器就是集合,叫法不一样,个人喜好

 

比较常用到的集合有ArrayList        LinkedList       HashSet       HashMap

HashSet实现了Set这个接口,Set继承了Collection这个接口

ArrayList与LinkedList实现了List这个接口,List继承了Collection这个接口

HashMap实现了Map这个接口

这是他们之前的关系,List与Set都继承了同一个接口

List与Set的不同,List允许有重复值会保持进椎的顺序,Set不允许有重复值,是无顺序的

ArrayList与LinkedList就是一个读快改慢,与一个读慢改快的区别

HashMap基于哈希表的键值对存储,一个键对应一个值,允许有null值

 

简单说

集合不允许重复

容器可以重复

上一个:沈阳Java程序员培训学校哪里好呢?
下一个:谁有好一点的java学习网站啊

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,