*/
public boolean isEmpty(){
return size==0;
}
/**
* 清空线性表
*/
public void clear(){
Arrays.fill(elementData, null);
size = 0;
}
/**
* 获取指定位置的前一个元素
* @param index 线性表位置,若是取线性表最后一个元素,必须index = size,
* size为线性表元素个数
* @return
*/
public T priorElem(int index){
if(index》0&&index《size+1)
return (T)elementData[index-1];
else {
throw new IndexOutOfBoundsException(“数组越界异常”);
}
}
/**
* 删除指定位置的元素
* @param index
*/
public void delete(int index){
if(index《0||index》size-1){
throw new IndexOutOfBoundsException(“数组越界异常”);
}else{
//把数组前移一位
System.arraycopy(elementData, index+1, elementData, index, size-index-1);
size--;
//清空最后一个元素
elementData[size]=null;
}
}
/**
* 获取指定线性表位置的后一个元素
* @param index 线性表位置,若是取线性表第0个元素,必须index=-1
* @return
*/
public T nextElem(int index){
if (index==-1) {
return (T)elementData[0];
}
else if (index《size-1&&index》-1) {
return (T)elementData[index+1];
}else{
throw new IndexOutOfBoundsException(“数组越界异常”);
}
}
/**
* 确保数组所需长度大于数组原有长度
* @param mCapacity 数组所需长度
*/
private void ensureCapacity(int mCapacity){
if(mCapacity》capacity){
capacity=mCapacity+2;
// System.out.println(“capacity:”+capacity);
elementData = Arrays.copyOf(elementData, capacity);