Динамический массив целых в j2me - PullRequest
2 голосов
/ 24 августа 2009

Я хочу создать простой динамический массив целых в моем приложении j2me,

Единственный динамический массив, который я вижу, это "java.util.Vector", и этот, кажется, не принимает int как новый элемент (только хочет Objects).

Итак, как мне решить эту проблему?

Ответы [ 2 ]

6 голосов
/ 24 августа 2009

Вам нужно поместить целое число в целое число.

v.addElement(new Integer(1));
5 голосов
/ 24 августа 2009
public class DynamicIntArray
{
    private static final int CAPACITY_INCREMENT = 10;
    private static final int INITIAL_CAPACITY   = 10;

    private final int capacityIncrement;

    public int   length = 0;
    public int[] array;

    public DynamicIntArray(int initialCapacity, int capacityIncrement)
    {
        this.capacityIncrement = capacityIncrement;
        this.array = new int[initialCapacity];
    }

    public DynamicIntArray()
    {
        this(CAPACITY_INCREMENT, INITIAL_CAPACITY);
    }

    public int append(int i)
    {
        final int offset = length;
        if (offset == array.length)
        {
            int[] old = array;
            array = new int[offset + capacityIncrement];
            System.arraycopy(old, 0, array, 0, offset);
        }
        array[length++] = i;
        return offset;
    }


    public void removeElementAt(int offset)
    {
        if (offset >= length)
        {
            throw new ArrayIndexOutOfBoundsException("offset too big");
        }

        if (offset < length)
        {
            System.arraycopy(array, offset+1, array, offset, length-offset-1);
            length--;
        }
    }
}

Нет метода setAt (), но я уверен, что вы поняли идею.

...