欢迎来到天天文库
浏览记录
ID:11569241
大小:51.50 KB
页数:5页
时间:2018-07-12
《集合里map,set,list的区别》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、Java中的Set,List,Map的区别 (转)对JAVA的集合的理解是相对于数组 相对于数组的是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型) JAVA集合可以存储和操作数目不固定的一组数据。 所有的JAVA集合都位于java.util包中! JAVA集合只能存放引用类型的的数据,不能存放基本数据类型. JAVA集合主要分为三种类型: Set(集) List(列表) Map(映射) Collection接口 Collection是最基本的集合接口,声明了适用于JAVA集合(只包括Set和List)的通用
2、方法。 Set和List都继承了Conllection,Map没有 Collection接口的方法: booleanadd(Objecto):向集合中加入一个对象的引用 voidclear():删除集合中所有的对象,即不再持有这些对象的引用 booleanisEmpty():判断集合是否为空 booleancontains(Objecto):判断集合中是否持有特定对象的引用 Iterartoriterator():返回一个Iterator对象,可以用来遍历集合中的元素 booleanremove(Objecto):从集合中删除一个对象的
3、引用 intsize():返回集合中元素的数目 Object[]toArray():返回一个数组,该数组中包括集合中的所有元素 关于:Iterator()和toArray()方法都用于集合的所有的元素,前者返回一个Iterator对象,后者返回一个包含集合中所有元素的数组。 Iterator接口声明了如下方法: hasNext():判断集合中元素是否遍历完毕,如果没有,就返回true next():返回下一个元素 remove():从集合中删除上一个有next()方法返回的元素。 Set(集合): Set是最简单的一种集合。集合中的对
4、象不按特定的方式排序,并且没有重复对象。 Set接口主要实现了两个实现类: HashSet:HashSet类按照哈希算法来存取集合中的对象,存取速度比较快 TreeSet:TreeSet类实现了SortedSet接口,能够对集合中的对象进行排序。 Set的用法: 存放的是对象的引用,没有重复对象 Setset=newHashSet(); Strings1=newString("hello"); Strings2=s1; Strings3=newString("world"); set.add(s1); set.add(s2);
5、set.add(s3); System.out.println(set.size());//打印集合中对象的数目为2。 Set的add()方法是如何判断对象是否已经存放在集合中? booleanisExists=false; Iteratoriterator=set.iterator(); while(it.hasNext()){ StringoldStr=it.next(); if(newStr.equals(oldStr)){ isExists=true; } } List(列表): List的特征是其元素以线性方式存储,集
6、合中可以存放重复对象。 List接口主要实现类包括: ArrayList():代表长度可以改变得数组。可以对元素进行随机的访问,向ArrayList()中插入与与删除元素的速度慢。 LinkedList():在实现中采用链表数据结构。插入和删除速度快,访问速度慢。 对于List的随机访问来说,就是只随机来检索位于特定位置的元素。 List的get(intindex)方法放回集合中由参数index指定的索引位置的对象,下标从“0”开始。 最基本的两种检索集合中的所有对象的方法: 1:用for循环和get()方法: for(inti=0;
7、i8、 1添加,删除操作: Objectput(Objectkey,Objectvalue):向集
8、 1添加,删除操作: Objectput(Objectkey,Objectvalue):向集
此文档下载收益归作者所有