程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 數組-二維數組(內存分布,相關運用)

數組-二維數組(內存分布,相關運用)

編輯:C++入門知識

數組-二維數組(內存分布,相關運用)

前言:平時用的數組機會也不少,但對二維數組的總結較少。對二維數組的內存分布更是沒有了解過。今天對二維數組的內存分布和相關運用進行了重新認識和歸納。

二維數組—數組中的數組。

(在這之前,沒有深入思考這句話。後悔莫及!!!)

格式一 例如:

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

一、我們先來創建一個二維數組。

1、創建一個數組。new [];

2、這個數組裡裝的是什麼。還是數組。new [][];

3、數組的數組(小數組)裡裝的是什麼。是int元素。new int[][];

4、大數組裡有幾個小數組。new int[3][];

5、小數組裡有幾個元素。new int[3][2];

6、賦值符號左邊定義一個數組類型變量。[] arr =

7、數組裡裝的是什麼。還是數組。[][] arr =

8、小數組裡裝的什麼元素。int[][] arr =

小結:對於格式一。創建一個二維數組,該數組中有3個一位數組,每一個一維數組中有2個元素。

格式二 例如:

int[][] arr = new int[3][];

arr[0] = new int[3];

arr[1] = new int[1];

arr[2] = new int[2];

二、對格式二的深入認識。

1、二維數組中創建了3個數組。

2、每個二維數組都是默認初始化值null。

3、可以對這三個二維數組分別進行初始化。(每個一維數組有多少個元素不定。)

三、二維數組的內存簡述。

1、大數組中創建時,會為其“元素”默認初始化為null。因為小數組為實體,不存在時用null來表示空引用(指向)。

2、實體在內存堆中都有獨立的空間分配。

3、對於“int[][] arr = new int[3][2];”,相當於在堆中創建了四個一維數組,大數組中裝的是小數組的地址,小數組中裝的是int元素。

四、二維數組的靜態初始化。

int[][] arr = {{2,3,1},{66},{84,2,44,30,92}};

五、二維數組的長度獲取方式。

arr.length //表示小數組的個數。

arr[1].length //表示二維數組中角標為1的小數組的元素個數。

六、二維數組的遍歷。

需要for的嵌套使用。

For(intx=0;x

{

For(int y=0;y

{

System.out.print(“arr[“+x+”][“+y+”]="+arr[x][y]);

}

System.out.println();

}

七、二維數組什麼時候用?

記住一個規律:

數據多了——用數組。

數組多了——用二維數組。

(當然用map集合大多數能取代二維數組。)

如有好的建議,可留言或發至筆者郵箱:[email protected]

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved