快速业务通道

JAVA提高教程(1)-认识Set集合 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-17

JAVA提高教程(1)-认识Set集合

时间:2011-04-07 csdn 老紫竹

集合的基本介绍,全在代码里了。不同的实现,细节不同,使用时稍微注意点就行了 。幸好我们常用的就那么几个。

package collection.lession1; import java.util.EnumSet; import java.util.HashSet; import java.util.Iterator; import java.util.LinkedHashSet; import java.util.Set; import java.util.TreeSet; /** * 老紫竹JAVA提高教程(1)-认识Set集合<br> * Set不允许重复数据<br> * Set最多允许一个null数据(有些实现不允许null)<br> * * @author 老紫竹 JAVA世纪网(java2000.net) * */ public class Lession1 {  public static void main(String[] args) {   // 基于Hash的集合,其中的hashCode方法很重要   Set hashSet = new HashSet();   // 提供按照一定规则排序的集合   Set treeSet = new TreeSet();   // 按照插入顺序进行使用的集合,双向链表   Set linkedHashSet = new LinkedHashSet();   // 针对enum使用的集合   Set enumSet = EnumSet.noneOf(MyEnum.class);   // 集合的基本操作   // 我们用HashSet做测试   Set<Object> set = new HashSet<Object>();   ;   Object obj = new Object();   // 如果 set 中尚未存在指定的元素,则添加此元素   // 如何判断是否存在,各个实现并不相同   boolean ok = set.add(obj);   Set<Object> set2 = new HashSet<Object>();   // 如果 set 中没有指定 collection 中的所有元素,则将其添加到此 set 中   // 实际上是合集操作。   ok = set.addAll(set2);   // 移除此 set 中的所有元素   // 就是清空了,啥都不要了   set.clear();   // 判断集合里是否包含这个对象   // 判断方法,各个实现并不相同   boolean found = set.contains(obj);   // 判断一个集合是否包含了另一个集合或者至少是不少   found = set.containsAll(set2);   // 判断一个集合是否为空   // 其实通过集合的长度也能判断出来   boolean empty = set.isEmpty();   // 迭代器,提供统一的访问集合的接口   Iterator<Object> it = set.iterator();   // 从集合中删除某个数据   // 也就是被开除了   ok = set.remove(obj);   // 从集合中删除一组数据   // 也就是集体开除了   ok = set.removeAll(set2);   // 看看集合里有多少东西了   int size = set.size();   // 将集合转化为数组   Object[] objs = set.toArray();   // 将集合转化为指定格式的数组   // 比如集合里保存的都是String   String[] objs2 = (String[]) set.toArray(new String[0]);  } } enum MyEnum { }

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号