@Java
大家好,我是Ziph!
这是一道关于数组的小练习,对于初学者来说一定要勤学、勤练、勤思考!
大家先要考虑好小练习的结构和业务逻辑,之后先写好一步一步的注释,后逐一实现功能和完善。
一定要找到自己的学习方法!
觉得对的可以赞一波了!哈哈。
import java.util.Arrays;
public class Array {
static int[] a = new int[3];//创建一个数组对象
static int index = 0;//数组中有效元素个数
public static void main(String[] args) {
//测试增删改查方法
insert(0, 12);
insert(1, 54);
insert(2, 1);
insert(3, 0);
insert(4, 79);
print();
delete(1);
print();
change(3, 66);
print();
}
//插入元素
public static void insert(int position, int value) {
//校验
if (position < 0 || position > index) {
System.out.println("输入错误!");
System.exit(0);
}
//扩容的校验
if (a.length == index) {
expend();
}
//从插入位置向右移动元素
for (int i = index; i > position; i--) {
a[i] = a[i - 1];
}
//替换插入的位置的元素
a[position] = value;
//有效元素增1
index++;
}
//删除数组中的元素
public static void delete(int position) {
//校验
boolean flag = check(position);
//向左移动元素进行覆盖
for (int i = position; i < index - 1; i++) {
a[i] = a[i + 1];
}
//删除元素,有效元素自减1
index--;
}
//替换数组中的元素
public static void change(int position, int value) {
//校验
boolean flag = check(position);
//覆盖元素
a[position] = value;
}
//遍历数组
public static void print() {
for (int i = 0; i < index; i++) {
System.out.print(a[i] + " ");
}
System.out.println();
}
//扩容
public static void expend() {
//给数组赋予新的数组长度
a = Arrays.copyOf(a, a.length + 1);
}
//对输入错误进行校验
public static boolean check(int position) {
if (position < 0 || position >= index) {
System.out.println("输入错误!");
System.exit(0);
return false;
} else {
return true;
}
}
}
执行结果:
有问题留言回复!
对于初学者,大家又不懂的我可以给你分享我的学习习惯和学习方法!
我只是分享,但你一定要找到属于你自己的!
祝大家越来越好!