⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 setlist.java

📁 Java游戏高级编程!!很不错的!!!Java游戏高级编程!!很不错的
💻 JAVA
字号:
     package com.croftsoft.core.util;

     import java.util.*;

     /*********************************************************************
     *
     * A List that, like a Set, contains no duplicate Elements.
     * 
     * @author
     *   <A HREF="http://www.alumni.caltech.edu/~croft/">David W. Croft</A>
     * @version
     *   1998-11-23
     *********************************************************************/

     public class  SetList implements Set, List
     //////////////////////////////////////////////////////////////////////
     //////////////////////////////////////////////////////////////////////
     {

     protected List  list;

     //////////////////////////////////////////////////////////////////////
     //////////////////////////////////////////////////////////////////////

     public  SetList ( List  list )
     //////////////////////////////////////////////////////////////////////
     {
       this.list = list;
     }

     //////////////////////////////////////////////////////////////////////
     //////////////////////////////////////////////////////////////////////

     /*********************************************************************
     * Returns false if the List already contains the object.
     *********************************************************************/
     public synchronized boolean add ( Object o )
     //////////////////////////////////////////////////////////////////////
     {
       if ( list.contains ( o ) ) return false;
       else return list.add ( o );
     }
       
     /*********************************************************************
     * Skips objects in the Collection that already exist in the List.
     * Returns true if any of the objects were added.
     *********************************************************************/
     public synchronized boolean addAll ( Collection  c )
     //////////////////////////////////////////////////////////////////////
     {
       boolean  result = false;
       Iterator  iterator = c.iterator ( );
       while ( iterator.hasNext ( ) )
       {
         if ( this.add ( iterator.next ( ) ) ) result = true;
       }
       return result;
     }

     /*********************************************************************
     * Skips object in the Collection that already exist in the List.
     * Returns true if any of the objects were added.
     *********************************************************************/
     public synchronized boolean addAll ( int  index, Collection  c )
     //////////////////////////////////////////////////////////////////////
     {
       boolean result = false;
       int  i = 0;
       Iterator  iterator = c.iterator ( );
       while ( iterator.hasNext ( ) )
       {
         Object  o = iterator.next ( );
         if ( !list.contains ( o ) )
         {
           list.add ( index + i, o );
           i++;
           result = true;
         }
       }
       return result;
     }

     /*********************************************************************
     * @throws IllegalArgumentException
     *   If a duplicate object already exists in the List.
     *********************************************************************/
     public synchronized Object  set ( int index, Object element )
     //////////////////////////////////////////////////////////////////////
     {
       if ( list.contains ( element ) )
       {
         throw new IllegalArgumentException ( "duplicate" );
       }
       else return list.set ( index, element );
     }

     /*********************************************************************
     * @throws IllegalArgumentException
     *   If a duplicate object already exists in the List.
     *********************************************************************/
     public synchronized void  add ( int  index, Object  element )
     //////////////////////////////////////////////////////////////////////
     {
       if ( list.contains ( element ) )
       {
         throw new IllegalArgumentException ( "duplicate" );
       }
       else list.add ( index, element );
     }

     //////////////////////////////////////////////////////////////////////
     //////////////////////////////////////////////////////////////////////

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

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

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

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

     public Object[] toArray() { return list.toArray ( ); }

     public Object[] toArray(Object a[]) { return list.toArray ( a ); }

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

     public boolean containsAll(Collection c)
       { return list.containsAll ( c ); }

     public boolean removeAll(Collection c)
       { return list.removeAll ( c ); }

     public boolean retainAll(Collection c)
       { return list.retainAll ( c ); }

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

     public boolean equals(Object o) { return list.equals ( o ); }

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

     public Object get(int index) { return list.get ( index ); }

     public Object remove ( int index ) { return list.remove ( index ); }

     public int indexOf(Object o) { return list.indexOf ( o ); }

     public int lastIndexOf(Object o) { return list.lastIndexOf ( o ); }

     public ListIterator listIterator() { return list.listIterator ( ); }

     public ListIterator listIterator(int index)
       { return list.listIterator ( index ); }

     public List subList(int fromIndex, int toIndex)
       { return list.subList ( fromIndex, toIndex ); }

     //////////////////////////////////////////////////////////////////////
     //////////////////////////////////////////////////////////////////////
     }

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -