當前位置:首頁 » 編程語言 » java變長數組

java變長數組

發布時間: 2023-08-09 18:49:16

『壹』 java中如何動態改變數組長度 動態數組 array

java中的數組一旦被定義長度是不允許修改長度的,如果題主希望實現類似的功能可以採用ArrayList。ArrayList的底層結構就是數組。當ArrayList實例化時會默認設置一個長度,當長度不夠用時會自動擴展現有長度的1/2.(假設初始數組長度為10,現在變成了15)


System.array(Object src,int srcPos,Object dest,int destPos,int length )能夠實現數組復制的功能。

假設有數組a(src),數組b(dest),我們希望把a數組中從下標為2(srcPos)長度為3(length)的元素復制到b的下標為4(destPos)開始的元素中。java代碼示例如下:

inta=[1,3,5,7,9];
intb=[2,4,6,8,0,2,4];
System.array(a,2,b,4,3);

//最終b的內容為[2,4,6,8,5,7,9];

但是如果注意API的話會發現array有幾個限制

1、a,b的元素類型必須相同(int和Integer這里也是需要區分的)

2、數組不能越界,也就是srcPos+length不能超過a的長度;desPos+length也不能超過b的長度,否則就會報數組越界的一場。這也說明了無法實現數組長度的動態擴展。

『貳』 java中數組的長度可以改變嗎

java中數組的長度不可以改變。

java中的數組的定義就是相同類型,固定長度的一組數據,一旦被初始化,長度不可更改。如果對需要用的數組的長度不確定,有兩種解決辦法:

第一種是在數組初始化的時候長度申請的足夠大,這樣做會造成內存空間的浪費,一般不推薦使用。
第二種是用java中提供的集合的方式存儲數據,如List,Set和Map類型的對象存儲數據,一方面這些類型的對象的長度都是動態增長的,另一方面這些類中提供了很多便於操作數據的方法,因此在對所需存儲數據的多少不確定的時候,第二種方法比第一種方法更優秀。

熱點內容
內置存儲卡可以拆嗎 發布:2025-05-18 04:16:35 瀏覽:335
編譯原理課時設置 發布:2025-05-18 04:13:28 瀏覽:378
linux中進入ip地址伺服器 發布:2025-05-18 04:11:21 瀏覽:612
java用什麼軟體寫 發布:2025-05-18 03:56:19 瀏覽:32
linux配置vim編譯c 發布:2025-05-18 03:55:07 瀏覽:107
砸百鬼腳本 發布:2025-05-18 03:53:34 瀏覽:943
安卓手機如何拍視頻和蘋果一樣 發布:2025-05-18 03:40:47 瀏覽:739
為什麼安卓手機連不上蘋果7熱點 發布:2025-05-18 03:40:13 瀏覽:803
網卡訪問 發布:2025-05-18 03:35:04 瀏覽:511
接收和發送伺服器地址 發布:2025-05-18 03:33:48 瀏覽:371