java 陣列的定義和使用

2021-09-17 08:31:37 字數 2168 閱讀 4040

1、基本概念

陣列:用於儲存多個相同型別資料的集合。

優點:可以使用統一的方式進行管理。

缺點:長度是固定的,有越界的風險。

需要注意:陣列屬於引用資料型別,因此使用之前必須例項化。

2、一維陣列的初始化方式:

(1)動態初始化(很常用):

基本格式:資料型別 陣列名稱 = new 資料型別 [長度] ;

方式一:int array = new int[5];

public class demo1 

}}

方式二:

int array = null; 

array = new int[5];

(2)靜態初始化

完整格式:int array = new int;   -->注意 裡面不能寫數字

簡化格式: int array = ;   

3、二維陣列的初始化方式:

(1)動態初始化

資料型別 物件陣列 = new 資料型別[行個數][列個數] ;

//定義乙個3行2列的二維陣列

int 2darray = new int[3][2];

(2)靜態初始化

int 2darray = new int,,

};

4、陣列的訪問方式:

(1)對一維陣列,可以使用for迴圈遍歷、foreach遍歷以及arrays.tostring字元列印。

//方式一:for迴圈遍歷

for (int i = 0; i < array.length; i++)

//方式二:foreach遍歷

for (int i:array)

//方式三:字元列印

system.out.println(arrays.tostring(array));

(2)對二維陣列,可以使用雙重for迴圈,或者使用arrays.deeptostring字元列印。

//方式1、--->雙重for迴圈遍歷

for (int i = 0; i < 2darray.length; i++)

} //方式2、--->deeptostring()

system.out.println(arrays.deeptostring(2darray));

5、陣列的四種拷貝方式:

(要注意每種拷貝方式有無返回值、是否有引數以及引數的個數)

(1)for迴圈拷貝:

/*for迴圈拷貝*/

public static void main(string args) ;

int array2 = new int[array.length];

system.out.println(arrays.tostring(array));

system.out.println(arrays.tostring(array2));

for (int i = 0; i < array.length; i++)

array2[0] = 99;

system.out.println(arrays.tostring(array));

system.out.println(arrays.tostring(array2));

}

(2)clone拷貝 : 原記憶體被**,新分配一段記憶體

array2 = array.clone();
(3)system.arraycopy()拷貝:速度最快,因為底層由c/c++實現,使用native標誌

//有5個引數

system.arraycopy(array,0,array2,0,array.length);

(4)arrays.copyof()

array2 = arrays.copyof(array,array.length);
總結:四種陣列拷貝方式,對基本資料型別來說都是深拷貝;如果陣列裡面是引用型別,四種拷貝都是淺拷貝。

java篇 6 陣列的定義和使用

1 一維陣列 宣告 資料型別 陣列名 null 或資料型別 陣列名 null 分配記憶體給陣列 陣列名 new 資料型別 長度 可以簡寫為 資料型別 陣列名 new資料型別 個數 堆疊記憶體的解釋 在陣列操作中,在棧記憶體中儲存的永遠是陣列的名稱,只開闢了棧記憶體空間的陣列是永遠無法使用的,必須有指...

陣列的定義和使用

說到陣列,首先我們需要知道我們為什麼要定義陣列?方法返回值的時候只能返回乙個值,但是如果我們要返回多個值怎麼辦呢?這時候就需要用到陣列,可以把多個資料放在乙個陣列中,然後返回陣列,從而達到返回多個值的作用。那麼什麼是陣列呢?陣列是 相同資料型別的資料按 順序組成的一種 引用資料型別。陣列的定義分為兩...

陣列的定義和使用

一.陣列的定義 陣列從0開始,表示第乙個元素 1 root foundation77 mnt array 1 2 4 root foundation77 mnt echo 1 2 4 root foundation77 mnt 2 root foundation77 mnt array 1 one ...