Java-set

 

set

public interface Set<E> extends Collection<E> 

 

使用集合汇总

package 集合类.Set类;  
  
/** 
 * Set不允许重复数据<br> 
 * Set最多允许一个null数据 
 * @author jjj 
 * 
 */  
import java.util.EnumSet;  
import java.util.HashSet;  
import java.util.Iterator;  
import java.util.LinkedHashSet;  
import java.util.Set;  
import java.util.TreeSet;  
  
public class Set类汇总 {  
    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]);  
    }  
}  

 

posted @ 2015-05-17 21:43  243573295  阅读(283)  评论(0编辑  收藏  举报