public class ArrayMano<E> implements Mano<E> {
    private int size;
    private final int MAX_SIZE = 100;
    private Object elementData[];
    public ArrayMano() {
        this.elementData = new Object[MAX_SIZE];
    }
    @Override
    public int size() {
        return size;
    }
    @Override
    public boolean isEmpty() {
        return (size == 0);
    }
    @Override
    public boolean add(E e) {
        if (size<MAX_SIZE) {
            elementData[size] = e;
            size ++;
            return true;
        } else {
            return false;
        }
    }
    @Override
    public boolean remove(Object o) {
        for(int i=0; i<size; i++) {
            if (elementData[i].equals(o)) {
                for(; i-1<size; i++) {
                    elementData[i] = elementData[i+1];
                }
                size--; 
                return true;
            }
        }
        return false;
    }
    @Override
    public String toString() {
        String s = "Mano: ";
        for(int i=0; i<size; i++) {
            s += elementData[i];
        }
        s +="\n";
        return s;
    }
}
/*
 * - Podeis mirar el  public class ArrayList<E> extends AbstractList<E>, implements List<E>, RandomAccess, Cloneable, java.io.Serializable :
http://grepcode.com/file/repository.grepcode.com/java/root/jdk/openjdk/6-b14/java/util/ArrayList.java
*/