我想要做的INTS的簡單的動態數組在我的J2ME應用程序的整數動態數組,在J2ME
唯一的動態數組我看到的是「java.util.Vector中的」這一個似乎沒有不接受一個int作爲一個新的元素(只需要對象)。
那麼我該如何解決這個問題呢?
我想要做的INTS的簡單的動態數組在我的J2ME應用程序的整數動態數組,在J2ME
唯一的動態數組我看到的是「java.util.Vector中的」這一個似乎沒有不接受一個int作爲一個新的元素(只需要對象)。
那麼我該如何解決這個問題呢?
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()方法,但我敢肯定你的想法。
您需要在Integer中填充int。
v.addElement(new Integer(1));
我結束了使用,問題是,我發現提取值的最佳方式是「((Integer)(v.elementAt(index)))。intValue()」。它是一個Java的東西或什麼? – kkaploon 2009-08-25 17:30:58
使用泛型。 Vector
你可以使用泛型來輸入你的Vector,然後你不會用elementAt返回Objects,而是使用Inegers。試試: Vector
我猜DEFAULT_CAPACITY_INCREMENT,DEFAULT_INITIAL_CAPACITY不應該有DEFAULT_前綴? – Lukasz 2011-04-27 13:09:03
很好看,謝謝。 – izb 2011-04-27 14:52:52