aijava

welcome to my online log ! open java new world! Taste java charm........
posts - 1, comments - 4, trackbacks - 0, articles - 42
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

java基础学习1(java.util.AbstractSet)

Posted on 2006-11-05 17:47 阅读(201) 评论(0)  编辑  收藏 所属分类: java基础学习系列
import  java.io.Serializable;
import  java.util.AbstractSet;
import  java.util.ArrayList;
import  java.util.Collection;
import  java.util.Iterator;
import  java.util.Set;

public class  MainClass  {
   public static  void  main ( String args []) {
     Set map =  new  ArraySet () ;
     map.add ( "V" ) ;
     map.add ( "M" ) ;
     map.add ( "N" ) ;
     System.out.println ( map ) ;
   }
}

class  ArraySet  extends  AbstractSet  implements  Cloneable, Serializable  {

   private  ArrayList list;

   public  ArraySet () {
     list =  new  ArrayList () ;
   }

   public  ArraySet ( Collection col ) {
     list =  new  ArrayList () ;

     // No need to check for dups if col is a set
     Iterator itor = col.iterator () ;
     if  ( col  instanceof  Set ) {
       while  ( itor.hasNext ()) {
         list.add ( itor.next ()) ;
       }
     else  {
       while  ( itor.hasNext ()) {
         add ( itor.next ()) ;
       }
     }
   }

   public  Iterator iterator () {
     return  list.iterator () ;
   }

   public  int  size () {
     return  list.size () ;
   }

   public  boolean  add ( Object element ) {
     boolean  modified;
     if  ( modified = !list.contains ( element )) {
       list.add ( element ) ;
     }
     return  modified;
   }

   public  boolean  remove ( Object element ) {
     return  list.remove ( element ) ;
   }

   public  boolean  isEmpty () {
     return  list.isEmpty () ;
   }

   public  boolean  contains ( Object element ) {
     return  list.contains ( element ) ;
   }

   public  void  clear () {
     list.clear () ;
   }

   public  Object clone () {
     try  {
       ArraySet newSet =  ( ArraySet super .clone () ;
       newSet.list =  ( ArrayList list.clone () ;
       return  newSet;
     catch  ( CloneNotSupportedException e ) {
       throw new  InternalError () ;
     }
   }
}

http://freehost13.websamba.com