在寫(xiě)程序的過(guò)程中,我們常常會(huì)碰見(jiàn)數(shù)組空間不夠用的情況,比如我已經(jīng)初始化了一個(gè)數(shù)組int []a = {1,2,3,4,5,6,7,8,9,10} ;這時(shí),我想往數(shù)組下標(biāo)3的位置插入一個(gè)元素,該怎么做?用C語(yǔ)言實(shí)現(xiàn)太難了吧,需要調(diào)用memcpy函數(shù)要一個(gè)一個(gè)偏,但是在java中就不用那么麻煩了,有種叫數(shù)組的擴(kuò)容方式,輕松實(shí)現(xiàn)。來(lái)看看代碼:
成都創(chuàng)新互聯(lián)公司"三網(wǎng)合一"的企業(yè)建站思路。企業(yè)可建設(shè)擁有電腦版、微信版、手機(jī)版的企業(yè)網(wǎng)站。實(shí)現(xiàn)跨屏營(yíng)銷(xiāo),產(chǎn)品發(fā)布一步更新,電腦網(wǎng)絡(luò)+移動(dòng)網(wǎng)絡(luò)一網(wǎng)打盡,滿(mǎn)足企業(yè)的營(yíng)銷(xiāo)需求!成都創(chuàng)新互聯(lián)公司具備承接各種類(lèi)型的網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)項(xiàng)目的能力。經(jīng)過(guò)十多年的努力的開(kāi)拓,為不同行業(yè)的企事業(yè)單位提供了優(yōu)質(zhì)的服務(wù),并獲得了客戶(hù)的一致好評(píng)。public class HelloWorld { public static void main(String[] args){ // Scanner s = new Scanner(System.in); // System.out.println("請(qǐng)輸入一個(gè)數(shù)字"); // int num = s.nextInt(); //這個(gè)數(shù)組下標(biāo)只能到9 int []a = {1,2,3,4,5,6,7,8,9,10}; //先擴(kuò)容 int []b = Getarray(a,3,100); Demoe.PrintArray(b); } //案例:有一個(gè)數(shù)組已經(jīng)初始化完畢,現(xiàn)向其下標(biāo)3插入一個(gè)元素100 public static int[] Getarray(int []a , int index , int num){ int src_array_length = a.length ; int []b = new int[src_array_length+1] ; for(int i = 0 ; i < a.length ; i++){ b[i] = a[i] ; } a = b ; //如果還想使用a,使得a指向b //接下來(lái)從最后一個(gè)元素開(kāi)始,將最后一個(gè)元素的前面一個(gè)元素拷貝到最后一個(gè) //以此類(lèi)推 for(int i = a.length - 1 ; i > index ; i--){ a[i] = a[i-1]; } //別忘了,將要插入的元素插入到對(duì)應(yīng)的數(shù)組坐標(biāo) a[index] = num ; return a ; } }