1.往数组中插入一个新数据
        我们知道,数据相当于一个容器,是用来存储一组相同数据类型的数据的,并且存储的数据是井然有序的,有自己的位置,方便取出。那我们就能知道,如果要是往数组里面插入一个新的数据,则需要先确定新插入的内容的位置,接着就需要把当前位置之后的数据都后移一位(为了给新插入的数据腾位置),这样就空出了一个位置,然后再把新数据放在这个空出的位置上。
        类比生活中的一个小例子,就比如排队买东西,越靠前的人就能越快买东西,是按着顺序一个一个来的。现在呢,来了一个vip,要让他第一个买东西,那是不是就得需要之前排队的那些人都得往后挪一个位置,然后腾出第一的位置给这个vip。插队这个行为不太好😅哈,但感觉这个例子原理挺符合我们数组插入新数据。
        不管敲什么代码,都得现把思路屡清楚。分三步走:确定新数据的位置→→这个位置之后的数据后移→→把新元素放上去

代码如下:

int list[]=new int[6];//声明一个整型的数组,并让其长度为6
		list[0]=99;
		list[1]=85;
		list[2]=82;
		list[3]=63;
		list[4]=60;
		System.out.println("插入前的成绩是:");
		for(int m=0;m<list.length;m++){
			System.out.print(list[m]+"\t");
			if(m==list.length-1){
				System.out.println("");
			}
		}
		int index=list.length;//保存新增数据的插入位置,先默认为最后一个位置,即五
		Scanner input=new Scanner(System.in);
		System.out.print("请输入新增成绩:");
		int num=input.nextInt();//从控制台接收一下新增的数组
		/*
		 * 将数组的数据逐个的与新增的数据进行比较,利用for循环比较,找到新插入数据在数组中的位置
		 */
		for(int i=0;i<list.length;i++){
			if(num>list[i]){//比较数据的大小
				index=i;//交换数据的位置,即下标。重新给index赋值
				//list[index]=num;//(erro,不能在这里直接把num的值赋给index的位置,因为上一步已经给index申请一个
				//位置了,并且这个位置还有值,也就是i位置的值,也就是说现在在index位置上的数据就是i的值,如果要是再重新给
				//index赋值,就会把index原先的值去掉,那i的值也就去掉了。)
				break;
			}
		}//for结束
		/*
		 * 元素后移
		 */
		for(int j=list.length-1;j>index;j--){
			list[j]=list[j-1];//index下标开始的元素后移一个位置(把后面的下标赋值给前面的)
		}
		list[index]=num;//插入新的数据
		System.out.println("插入成绩的下标是:"+index);
		System.out.println("插入后的成绩是:");
		for(int k=0;k<list.length;k++){
			System.out.print(list[k]+"\t");
		}

运行之后的结果是:

java 对象数组调用方法 java对象数组添加新数据_数组


如果要是删除数组中的一个数据的话,思路与插入类似,只不过后移变成前移,也就是把需要删除数据之后的数据都前移一个位置: