首先是数组的插入数据,要想向数组中插入数据,需要重新定义一个数组,给要插入的数据留下存储空间,这其中就要看我们怎么插入数据了,要是,在数组尾部插数据,可以:数组名.length-1
这样可以直接插入,如果是顺序的就需要把需要移动位置的数据往后移,一定要从后往前,一个一个往后移,不能从前往后,这样会覆盖掉数据,移过需要记录,存储数据的下标,通过下标直接给数组插入数据。
import java.util.Scanner;
public class ArrayDemo1 {
public static void main(String[] args) {
// 排序,插入数据
//定义一个数据
int[] arr = new int[]{45,12,23,56,89,15,48,79};
// 冒泡排序
for(int i=0;inewArr[i]){
bba=i;
break;
}else{
bba=newArr.length-1;
}
}
// 数组元素后移一位,给要插入的元素留位置
// 从后往前移,bba后面都要移,bba就是要插入数据的下标,所以说,他后面的需要往后移
for (int i =newArr.length-1; i > bba; i--) {
newArr[i]=newArr[i-1];
}
// 插入数据
newArr[bba]=num;
// 输出数据
for (int i = 0; i < newArr.length; i++) {
System.out.print(newArr[i]+"t");
}
System.out.println();
}
}
二、冒泡排序
public class ArrayTest3 {
public static void main(String[] args) {
// 冒泡排序算法(从小到大)
int[] arr = new int[]{89,56,23,48,95,15,26,99,65};
// 两两比较,所以说,次数是数组长度减一外层:数组名.length-1
for (int i = 0; i < arr.length-1; i++) {
// 循环一轮,减少一次,记住公式就行,内层:数组名.length-1-i
for (int j = 0; j < arr.length-1-i; j++) {
// 两个数进行比较,数大就相互换
if(arr[j]>arr[j+1]){
int num=arr[j];
arr[j]=arr[j+1];
arr[j+1]=num;
}
}
}
// 输出数据,遍历
for (int i = 0; i < arr.length; i++) {
System.out.print(arr[i]+"t");
}
System.out.println();
}
}



