java中數組的插入


package com.hxzy.demo;

import java.util.Arrays;
import java.util.Scanner;

public class Demo1 {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int[] array = {1, 6, 7, 5, 9, 8, 3, 4, 2};
        
        Scanner sc = new Scanner(System.in);
        System.out.println("請輸入放入的數字");
        int num = sc.nextInt();
        
        System.out.println("請輸入放入數字的下標");
        int index = sc.nextInt();
        sc.close();
        if (index > array.length || index < 0) {
            System.out.println("輸入的下標太大或不合法");
            return;
        }
        
        arrayInterposition(array, index, num);
        
    }
    
    /**
     * 將指定數字添加到指定下標上
     * @param array int類型的數組
     * @param index int類型 指定放入的下標
     * @param num int類型 指定放入的數字
     * @return 返回true表示方法運行成功返回false表示方法運行失敗
     */
    public static boolean arrayInterposition(int[] array, int index, int num) {
        //參數合法性判斷
        if (null == array || array.length == 0 || index < 0) {
            System.out.println("輸入的參數不合法");
            return false;
        }
        
        //復制一個長度+1的數組
        int[] arr = Arrays.copyOf(array, array.length + 1);
        
        //循環將數字后移
        for (int i = arr.length-1; i > index; i--) {
            arr[i] = arr[i - 1];
        }
        
        //將指定數字放到指定下標上
        arr[index] = num;
        
        //輸出數組
        System.out.println(Arrays.toString(arr));
        return true;
        
    }

}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM