本節(jié)內(nèi)容:
1:二維數(shù)組概述和格式1的講解
2:案例演示--輸出二維數(shù)組名稱、一維數(shù)組名稱和一個元素
3:本節(jié)總結&下節(jié)預告
本文出處:《凱哥陪你學系列之java基礎篇.Java基本語法篇》》中第30篇 二維數(shù)組1
一:二維數(shù)組格式
1:格式1
int [] [] arr new int [2][3];
格式說明:
2:注意事項
2.1:以下格式也可以表示二維數(shù)組
2.1.1: 數(shù)據(jù)類型 數(shù)組名 [] [] ?= new 數(shù)據(jù)類型[m][n];
例子: int arr [][] = new int[3][5];
2.1.2:數(shù)據(jù)類型 [] 數(shù)組名 [] = new 數(shù)據(jù)類型[m][n];
例子:int [] arr [] = new int[3][5];
再次說明:
[m]:中的m表示這個二維數(shù)組中有幾個一維數(shù)組
[n]:表示這個二維數(shù)組中每個一位數(shù)組的長度
建議寫法:
int [] [] arr= new int [3][5];
3:注意一下定義區(qū)別
int x; //表示聲明了 int類型的變量x
int y; //表示聲明了int類型的變量y
int x,y; //表示聲明了int類型的變量x和y
分解:
int x;inty
int [] x; //表示聲明了一個int類型的一維數(shù)組
int [] y []; //表示聲明了一個int類型的二位數(shù)組 (原因見 2.1.2)
int [] x,y[]; //這個表示什么?
表示聲明了一個int類型的一維數(shù)組x 和 聲明了一個int類型的二維數(shù)組
為什么?
分解:
int x,y[] 其實就是
int x[];
int [] y[];
所以就是x是一位數(shù)組 ,y是二維數(shù)組(可以參見int x,y的寫法)、
其實 int[] x,[];中的int[] 就是數(shù)據(jù)類型 所以按照int x,y;的分解就是
int [] x和int[] y[]了。
二:案例演示
需求:定義一個二位數(shù)組,需要輸出二維數(shù)組名稱、一維數(shù)組名稱和一個元素。
思考:
1:二維數(shù)組怎么輸出?
2:怎么輸出二維數(shù)組中的一維數(shù)組?
3:怎么輸出一個元素么?
分析:
1:通過之前的學習我們知道了一維數(shù)組arr在system.out.println(arr)的時候其實就是輸出arr這個一維數(shù)組在內(nèi)存中的地址位置。所以二維數(shù)組同理
2:在一維數(shù)組arr中我們獲取一維數(shù)組中的第一個元素怎么獲取的?system.out.println(arr[0])。
同理,二維數(shù)組doubleArr其實是多個一維數(shù)組組合的。我們先要獲取到二維數(shù)組中的第一個一維數(shù)組怎么獲取?doubleArr[0]
3:在2中我們獲取到了二維數(shù)組中的一維數(shù)組了,那么同理分析就很容易獲取到二維數(shù)組中第一個一維數(shù)組中的第一個元素了。doubleArr[0][0]
經(jīng)過上面的分析我們可以得到如下代碼:
打印數(shù)據(jù)如下:
第一行:二維數(shù)組arr在內(nèi)存中第地址:[[I@4679cf8c
第二行:獲取二維數(shù)組中的第一個一維數(shù)組為:[I@67291479
第三行:獲取二維數(shù)組arr中第一個一維數(shù)組的第一個元素為:0
說明:
第一行說明:
[[: 表示的是二位數(shù)組
I:表示是數(shù)組類型是int類型的
@4679cf8c:表達的是這個二維數(shù)組在內(nèi)存中的地址
第二行說明:
[:表示一位數(shù)組
I:表示是int類型的
三:本節(jié)總結
通過本節(jié)學習我們可以了解:
1:二維數(shù)組格式
2:怎么獲取二維數(shù)組中數(shù)據(jù)
下節(jié)預告:本節(jié)了解了二維數(shù)組格式及簡單的獲取。那么二維數(shù)組在內(nèi)存中是怎么樣的呢?
歡迎學習下節(jié)《從零學java筆錄-第31篇 二維數(shù)組2 圖解二位數(shù)組在內(nèi)存中存儲》
歡迎關注凱哥公眾號:凱哥Java
歡迎訪問凱哥個人網(wǎng)站:www.kaigejava.com
本文在凱哥個人網(wǎng)站地址:從零學java筆錄-第30篇 二維數(shù)組1二維數(shù)組格式&案例1