import java.util.*;
//在有序數組中插入一個數字,使數組依然有序排列
public class DemoinDex06 {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
//原數組
int [] oldarr = {11,22,33,44,55,66,77};
//要添加的數字
System.out.println("請輸入您要插入的數字:");
int num =input.nextInt();
//建立一個新數組的框架【因為數組一經定義無法在添加】
int [] newarr = new int[oldarr.length+1];
//將原數組的元素賦值到新數組當中
for (int i = 0; i < oldarr.length; i++) {
newarr [i]= oldarr[i];
}
//初始化一個索引的位置
int index = 0;
//確定index在新數組中的位置 【此處要從大往小比】
for (int i = oldarr.length-1; i >=0; i--) {
if (num>newarr[i]){
index = i+1;
break;
}
}
//移動新數組各元素的位置,給要添加的數字空出位置
for (int i = oldarr.length-1; i >=index; i--) {
newarr[i+1]=newarr[i];
}
//將要插入的數字保存進相應位置
newarr [index] = num;
System.out.println(Arrays.toString(newarr));
}
結果: