clwn.net
当前位置:首页 >> list和sEt集合 >>

list和sEt集合

set集合中的数据没有顺序,且如果add两个一样的对象或基本类型的数据,set集合里也是只有一个,即set集合中的数据都是独一无二的;不能使用加强的for循环;list中的数据是有顺序的,可以加入多个一样的对象和基本类型的数据,可使用加强的for循环;

个人觉得 叫set数集更好,每个成员元素都是唯一独特不同的,没有重复..list是数列,允许成员重复的,当成加强版厚重一点的[]数组用这是根本区别..

List:将以特定次序存储元素.所以取出来的顺序可能和放入顺序不同.--ArrayList / LinkedList / VectorSet : 中存放的都是无序的对象,并且不允许同样的元素存在.--HashSet / TreeSetList中提供索引的方式来添加元素和获取元素,而Set并不提供.由此可见List集合可是达到精确的存储和获取,而Set只能一个一个的比较,显然效率和实用性是比不上List集合的

Java中的集合包括三大类,它们是Set、List和Map,它们都处于java.util包中,Set、List和Map都是接口,它们有各自的实现类.Set的实现类主要有HashSet和TreeSet,List的实现类主要有ArrayList,Map的实现类主要有HashMap和TreeMap. Set

list 以特定次序来持有元素,可有重复元素.set 无法拥有重复元素,内部排序.map 保存key-value值,value可多值.

set是无序不可重复的集合,里面的数据都是唯一的, 不可以通过位置来操作值,要用迭代来遍历里面的数据 list是有序可重复的集合,和数组很相似, 可以通过索引位置来操作值

首先list与set都继承于Collection,list序列的形式存储元素.所以取出来的顺序可能和放入顺序不同.set的特点是无法存放重复的元素.map一个映射不能包含重复的键;每个键最多只能映射一个值.以键值对存放数据以上三个都是接口且不能被实例化.

add(对象); get(索引); 返回object

因为List和Set都实现了Collection接口,且都实现了addAll(Collection c)方法,因此可以采用addAll()方法将List和Set互相转换;另外,List和Set也提供了Collection c作为参数的构造函数,因此通常采用构造函数的形式完成互相转化.//List转

List和Set都是接口.他们各自有自己的实现类,有无顺序的实现类,也有有顺序的实现类.最大的不同就是List是可以重复的.而Set是不能重复的.List适合经常追加数据,插入,删除数据.但随即取数效率比较低.Set适合经常地随即储存,插入,删除.但是在遍历时效率比较低.

网站首页 | 网站地图
All rights reserved Powered by www.clwn.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com