废话不多说,直接贴代码
package Utils;
import java.util.Arrays;
/**
* Created by xiaobai on 2019/1/8.
*/
public class ArrayCRUD {
private int[] elements;
public ArrayCRUD(){
elements = new int[0];
}
//获取数组的长度;
public int size(){
return elements.length;
}
//给数组末尾添加元素
public void add(int element){
//创建一个新的长度比原数组大1的新数组
int[] newArr = new int[elements.length+1];
//将旧数组元素添加到新数组中
for (int i= 0; i<elements.length; i++){
newArr[i] = elements[i];
}
//将新元素添加进新数组
newArr[elements.length] = element;
//使用新数组替换旧数组
elements = newArr;
}
//展示数组
public void show(){
System.out.println(Arrays.toString(elements));
}
//删除一个元素
public void delete(int index){
if (index < 0 || index > elements.length-1){
throw new RuntimeException("下标越界");
}else{
int[] newArr = new int[elements.length-1];
//遍历数组
for (int i = 0; i <newArr.length ; i++) {
if (i<index){
newArr[i] = elements[i];
}else{
newArr[i] = elements[i+1];
}
}
//新数组替换旧数组
elements =newArr;
}
}
//获取某个位置的元素
public int get(int index){
return elements[index];
}
//给制定位置插入元素
public void insert(int index,int element){
//创建一个新的数组
int[] newArr = new int[elements.length+1];
//将原数组放入新数组中
for (int i = 0; i <elements.length ; i++) {
//如果在插入的元素之前
if (i<index){
newArr[i] = elements[i];
}else{
newArr[i+1] = elements[i];
}
}
//将新元素放入数组中
newArr[index] = element;
//新元素替换老元素
elements = newArr;
}
//替换指定位置的元素
public void update(int index,int element){
if (index < 0 || index > elements.length - 1){
throw new RuntimeException("下标越界");
}
elements[index] = element;
}
}
上面就是数组的CRUD的操作了 ,当然我们可以写一个方法来测试我们的代码
package TestArrayDemo;
import Utils.ArrayCRUD;
/**
* Created by xiaobai on 2019/1/8.
*/
public class JavaArrayTest {
public static void main(String[] args) {
ArrayCRUD arr = new ArrayCRUD();
int size = arr.size();
System.out.println(size);
arr.add(99);
arr.add(98);
arr.add(973);
arr.add(114124);
arr.show();
arr.delete(2);
arr.show();
arr.get(1);
System.out.println(arr.get(1));
arr.show();
arr.insert(2,88888);
arr.show();
arr.update(3,666666);
arr.show();
}
}
下面我们看看控制台的打印信息,OK了
0
[99, 98, 973, 114124]
[99, 98, 114124]
98
[99, 98, 114124]
[99, 98, 88888, 114124]
[99, 98, 88888, 666666]
Process finished with exit code 0
好了就到这里了,本人菜鸟一枚,互勉!!!