色综合图-色综合图片-色综合图片二区150p-色综合图区-玖玖国产精品视频-玖玖香蕉视频

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

數(shù)組在java中的擴(kuò)容的實(shí)例方法

瀏覽:6日期:2022-08-17 15:52:43

在使用數(shù)組的時(shí)候,因?yàn)榇笮〉南拗疲y免會(huì)出現(xiàn)不夠用的現(xiàn)象。直接給數(shù)據(jù)對(duì)象擴(kuò)容是不可行的,這時(shí)候就需要我們找尋一些其他的方法。本篇先為大家簡(jiǎn)單分析擴(kuò)容的原理,然后創(chuàng)建一個(gè)數(shù)組供大家使用,最后提供兩種數(shù)組擴(kuò)容方法:for循環(huán)Arrays,下面一起來(lái)看具體的操作。

1.擴(kuò)容的原理

(1)Java數(shù)組對(duì)象的大小是固定不變的,數(shù)組對(duì)象是不可擴(kuò)容的。

(2)利用數(shù)組復(fù)制方法可以變通的實(shí)現(xiàn)數(shù)組擴(kuò)容。

(3)System.arraycopy()可以復(fù)制數(shù)組。

(4)Arrays.copyOf()可以簡(jiǎn)便的創(chuàng)建數(shù)組副本。

(5)創(chuàng)建數(shù)組副本的同時(shí)將數(shù)組長(zhǎng)度增加就變通的實(shí)現(xiàn)了數(shù)組的擴(kuò)容。

2.先創(chuàng)建數(shù)組

import java.util.Arrays;//數(shù)組的擴(kuò)容示例public class Test {public static void main(String [] args){//創(chuàng)建一個(gè)原始數(shù)組,并做好初始化。// int [] arry = {1,3,5,7,9};int arry[] =new int[]{1,3,5,7,9};int arry1[]=new int[7];//新建一個(gè)新數(shù)組這里的7=arry.length+需要擴(kuò)容的長(zhǎng)度System.out.println('打印原始數(shù)組的長(zhǎng)度為:'+arry.length);System.out.println('打印新數(shù)組的長(zhǎng)度為:'+arry1.length);//驗(yàn)證該數(shù)組有沒(méi)有創(chuàng)建完成,可以獲取一下數(shù)組元素看看能不能成功。// System.out.println(arry[1]);//把從舊數(shù)組中獲取的數(shù)據(jù)一個(gè)一個(gè)的存到新的數(shù)組里面去,并新增兩個(gè)數(shù):11,13。//如何把數(shù)據(jù)存到數(shù)組里面去,使用arry1[0]=1;/*

3.方法一:循環(huán)遍歷原始數(shù)組arry,長(zhǎng)度是固定的,所以用for循環(huán)。

//1、先完成復(fù)制數(shù)組for(int i=0;i<arry.length;i++){arry1[i] = arry[i];}//2、再完成賦值插入操作,即已完成數(shù)組的擴(kuò)容操作。arry1[5]=11;arry1[6]=13;System.out.println('新數(shù)組為:'+arry1[5]);System.out.println('新數(shù)組為:'+arry1[6]);*//*

4.方法二:使用java的util包的Arrays類的copyOf(原數(shù)組名,新數(shù)組長(zhǎng)度)方法來(lái)進(jìn)行復(fù)制。

arry1 = Arrays.copyOf(arry,arry.length+2);arry1[5] = 11;arry1[6] = 13;System.out.println('新數(shù)組為:'+arry1[5]);System.out.println('新數(shù)組為:'+arry1[6]);

以上就是數(shù)組在java中的擴(kuò)容方法,這兩種方法相對(duì)新手而言,是非常容易實(shí)現(xiàn)擴(kuò)容的。

相關(guān)實(shí)例擴(kuò)展:

import java.util.Arrays;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();int []a = {1,2,3,4,5};int []b = new int[a.length] ;//1、源數(shù)組//2、源數(shù)組的哪個(gè)位置開(kāi)始//3、目標(biāo)數(shù)組//4、目標(biāo)數(shù)組的哪個(gè)位置開(kāi)始存放//5、拷貝幾個(gè)//System.arraycopy(a, 0, b, 0, a.length);//Demoe.PrintArray(b);//擴(kuò)容--->擴(kuò)容了一倍//a = Arrays.copyOf(a, 2*a.length) ;//Demoe.PrintArray(a);a = insertArray(a , 3 , 100) ;//打印數(shù)組System.out.println(Arrays.toString(a));}//寫(xiě)一個(gè)函數(shù),向整數(shù)數(shù)組的任意pos位置插入一個(gè)元素valuepublic static int[] insertArray(int []a , int pos , int value){if(pos < 0 || pos > a.length + 1) //索引下標(biāo)不對(duì),直接返回源數(shù)組 return a ;//放入一個(gè)元素,先擴(kuò)容,后復(fù)制a = Arrays.copyOf(a, a.length+1) ;for(int i = a.length - 1 ; i > pos ; i--){a[i] = a[i-1] ; //后移動(dòng)}a[pos] = value ;return a ;}}

到此這篇關(guān)于數(shù)組在java中的擴(kuò)容的實(shí)例方法的文章就介紹到這了,更多相關(guān)數(shù)組在java中的擴(kuò)容方法淺析內(nèi)容請(qǐng)搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 特级片在线观看 | 欧美成人毛片一级在线 | 三级视频在线播放 | 国产美女做爰免费视频网址 | 国产精品短视频免费观看 | 日韩精品久久久毛片一区二区 | 996re免费热在线视频手机 | 99久在线精品99re6视频 | 69av亚洲| 久久视频这里只有精品 | 亚洲 欧美 激情 另类 校园 | 国产一区欧美 | 久久久久国产精品免费看 | 日韩毛片免费在线观看 | 日本aaaa精品免费视频 | 成人午夜精品 | 欧美一区二区在线视频 | 99精品在线免费观看 | 美日韩黄色片 | 成人免费毛片一区二区三区 | 国产精品福利午夜h视频 | 日本特黄网站 | 免费a级 | 在线亚洲精品中文字幕美乳 | 欧美一级毛片无遮无挡 | 免费一级特黄欧美大片勹久久网 | 欧美片a | 亚洲成人影院在线观看 | 久久综合网址 | 国产高清在线精品二区一 | 久久久久毛片成人精品 | 韩国啪啪网站 | 国产黄色网 | 91精品福利手机国产在线 | 欧美日韩国产一区二区三区在线观看 | 天堂色网站 | 亚洲乱码一二三四五六区 | 小明台湾成人永久免费看看 | 日本黄大片影院一区二区 | 国产欧美成人不卡视频 | 国产真实乱子伦精品视 |