标签:inf 左移 throw 删除 行修改 nal i++ lse div
【自定义数组】
删除:指定index位置之后的数据整体左移即可
package com.exiuge.mytest.array; public class MyArray { private long[] arr; /** * 实际数组元素大小 */ private int elementsSize; /** * 初始容量50 */ private static final int initSize=50; public MyArray(){ arr=new long[initSize]; } /** * insert * @param value */ public void insert(Long value){ if (elementsSize>=initSize){ throw new ArrayIndexOutOfBoundsException(); } arr[elementsSize]=value; elementsSize++; } /** * 展示全部 */ public void display(){ System.out.println("["); for (int i=0;i<elementsSize;i++){ System.out.print(arr[i]+" "); } System.out.println("]"); } /** * 根据value找下标索引 * @param value * @return */ public int findByValue(Long value){ int i; for (i=0;i<elementsSize;i++){ if (arr[i]==value){ break; } } if (i==elementsSize){ return -1; }else { return i; } } /** * 根据下标索引找value * @param index * @return */ public long findByIndex(int index){ if (index>=elementsSize || index<0){ throw new ArrayIndexOutOfBoundsException(); }else { return arr[index]; } } /** * 根据下标索引删除value * @param index */ public void deleteByIndex(int index){ if (index>=elementsSize || index<0){ throw new ArrayIndexOutOfBoundsException(); }else { for (int i=index;i<elementsSize;i++){ arr[index]=arr[index+1]; } elementsSize--; } } /** * 根据下标索引进行修改value * @param index * @param newValue */ public void updateByIndex(int index,long newValue){ if (index>=elementsSize || index<0){ throw new ArrayIndexOutOfBoundsException(); }else { arr[index]=newValue; } } }
标签:inf 左移 throw 删除 行修改 nal i++ lse div
原文地址:https://www.cnblogs.com/anpeiyong/p/10481654.html