使用Java实现对一个数组的增删改查以及初始化

时间:2022-04-08 13:01:32
import java.util.*;
import java.lang.*; public class Array {
private int[] data;// 数组
private int size;// 实际元素的个数 // 初始化数组大小
public Array(int capcity) {
data = new int[capcity];
} // 默认数组大小为10
public Array() {
this(10);
} // 查看数组中元素个数
public int getSize() {
return size;
} // 获取数组的容量
public int getCapcity() {
return data.length;
} // 数组是否为空
public boolean isEmpty() {
return size == 0;
} // 向数组尾部添加元素
public void addLast(int e) {
if (size == data.length)
throw new RuntimeException("no space");
data[size] = e;
size++;
} // 向指定位置添加元素
public void add(int index, int e) {
if (size == data.length)
throw new RuntimeException("no space");
if (index < 0 || index > size)
throw new RuntimeException("failed to add!");
// 每一个元素都后移一个位置
for (int i = size - 1; i >= index; i--)
data[i + 1] = data[i];
data[index] = e;
size++;
} // 查询给定元素的位置
public int search(int e) {
for (int i = 0; i < data.length; i++) {
if (data[i] == e)
return i;
}
return -1;
} // 根据指定位置查询元素
public int get(int index) {
if (index > size)
return -1;
return data[index];
} // 修改元素
public void modify(int index, int e) {
data[index] = e;
} // 删除指定位置的元素 返回删除的元素
public int delete(int index) {
// 先记录下随机元素
int temp = data[index];
// index后面的每一个元素向前移动一个位置
for (int i = index + 1; i < size - 1; i++) {
data[i - 1] = data[i];
}
size--;
return temp;
} }