www.pudn.com > 20061029005.rar > ObjectSet.java


// Decompiled by Jad v1.5.7g. Copyright 2000 Pavel Kouznetsov. 
// Jad home page: http://www.geocities.com/SiliconValley/Bridge/8617/jad.html 
// Decompiler options: packimports(3) fieldsfirst ansi  
 
package org.cesar.inmotion.util; 
 
 
// Referenced classes of package org.cesar.inmotion.util: 
//            GameItem 
 
public class ObjectSet 
{ 
 
    private int elementCount; 
    private int activeCount; 
    private GameItem elementData[]; 
 
    public ObjectSet() 
    { 
        this(10); 
    } 
 
    public ObjectSet(int i) 
    { 
        elementData = new GameItem[i]; 
        elementCount = 0; 
    } 
 
    public boolean add(GameItem gameitem) 
    { 
        add(elementCount, gameitem); 
        return true; 
    } 
 
    public void add(int i, GameItem gameitem) 
    { 
        if(i > elementCount) 
            throw new ArrayIndexOutOfBoundsException("ArrayList: index > elementCount"); 
        ensureCapacity(elementCount + 1); 
        if(i < elementCount) 
            System.arraycopy(elementData, i, elementData, i + 1, elementCount - i); 
        elementData[i] = gameitem; 
        elementCount++; 
    } 
 
    public void clear() 
    { 
        elementCount = 0; 
        elementData = new GameItem[elementData.length]; 
    } 
 
    public boolean contains(GameItem gameitem) 
    { 
        boolean flag = false; 
        for(int i = 0; i < elementCount; i++) 
        { 
            if(gameitem != null ? !gameitem.equals(elementData[i]) : elementData[i] != null) 
                continue; 
            flag = true; 
            break; 
        } 
 
        return flag; 
    } 
 
    public void ensureCapacity(int i) 
    { 
        if(elementData.length >= i) 
            return; 
        int j = 2 * elementData.length; 
        if(j < i) 
            j = i; 
        GameItem agameitem[] = new GameItem[j]; 
        System.arraycopy(elementData, 0, agameitem, 0, elementCount); 
        elementData = agameitem; 
    } 
 
    public GameItem getByIndex(int i) 
    { 
        if(i < elementCount) 
            return elementData[i]; 
        else 
            return null; 
    } 
 
    public boolean isEmpty() 
    { 
        return elementCount == 0; 
    } 
 
    public void remove(int i) 
    { 
        if(i == elementCount - 1) 
        { 
            elementData[i] = null; 
        } else 
        { 
            System.arraycopy(elementData, i + 1, elementData, i, elementCount - (i + 1)); 
            elementData[elementCount - 1] = null; 
        } 
        elementCount--; 
    } 
 
    public GameItem set(int i, GameItem gameitem) 
    { 
        GameItem gameitem1 = elementData[i]; 
        elementData[i] = gameitem; 
        return gameitem1; 
    } 
 
    public int size() 
    { 
        return elementCount; 
    } 
 
    public void trimToSize() 
    { 
        GameItem agameitem[] = new GameItem[elementCount]; 
        System.arraycopy(elementData, 0, agameitem, 0, elementCount); 
        elementData = agameitem; 
    } 
}