简单的题,越简单的方法越好,刚学完类与对象

任意输入8个元素组成一堆数组,并从小到大排序!在输入第9个数之后,插入该一维数组并不影响从小到大的顺序。

首先数组的话是固定长度的,如果要动态复制也比较费劲,推荐使用list实现,然后调用ArrayList的toArray方法将list转成数组

public class test {
    public static void main(String[] args) {
        haha();
    }

    public static void haha (){
        Scanner scanner0 = new Scanner(System.in);
        List<Integer> list = new ArrayList<>();
        System.out.println("请输入集合所需元素!");
        while (true) {
            Integer haha = scanner0.nextInt();
            list.add(haha);
            if (list.size() == 8) {
                break;
            }
        }
        System.out.println("正在排序中,排序后结果如下:");
        String sort = sort(list);
        System.out.println("排序结果:" + sort);

        Scanner scanner1 = new Scanner(System.in);
        System.out.println("添加最后一个元素!");
        Integer hehe = scanner1.nextInt();
        list.add(hehe);
        System.out.println("正在排序中,排序后结果如下:");
        String sort0 = sort(list);
        System.out.println("最后的排序结果:" + sort0);
    }

    public static String sort (List<Integer> list) {
        Integer[] arr = new Integer[list.size()];
        list.toArray(arr);
        for (int i = 0; i < arr.length - 1; i++) {
            for (int j = 0; j < arr.length - i - 1; j++) {
                if (arr[j] > arr[j + 1]) {
                    arr[j] ^= arr[j + 1];
                    arr[j + 1] ^= arr[j];
                    arr[j] ^= arr[j + 1];
                }
            }
        }
        return Arrays.toString(arr);
    }
}

以上基本实现,后续需求自己琢磨着加吧