有些時候,我們需要對很多相同數(shù)據(jù)類型的數(shù)進(jìn)行集中或者統(tǒng)一處理的時候,我們可以利用數(shù)組來幫助我們對數(shù)據(jù)進(jìn)行管理。
數(shù)組就是相同數(shù)據(jù)類型的元素按一定順序排列的集合。我們可以把它看成一個大的盒子,里面按順序存放了多個數(shù)據(jù)類型相同的數(shù)據(jù)。
比如:定義一個int型數(shù)組ages存儲四個人的年齡,數(shù)組中的元素都可以通過下標(biāo)來訪問,下標(biāo)從 0 開始。例如,可以通過 ages[0] 獲取數(shù)組中的第一個元素 18 ,ages[2] 就可以取到第三個元素 34。
我們要使用數(shù)組,首先我們得對數(shù)組進(jìn)行聲明。
語法:
數(shù)據(jù)類型[ ] 數(shù)組名; //或者: 數(shù)據(jù)類型 數(shù)組名[ ];其中,數(shù)組名可以是任意合法的變量名,如:
int ages[]; //存放年齡的數(shù)組,類型為整型char symbol[]; //存放符號的數(shù)組,類型為字符型String [] name; //存放名稱的數(shù)組,類型為字符串型 當(dāng)我們聲明了數(shù)組后,需要為數(shù)組分配空間,也就是定義多大的數(shù)組。
語法:
數(shù)組名 = new 數(shù)據(jù)類型 [ 數(shù)組長度 ]; 數(shù)組長度就是數(shù)組最多可存放元素的個數(shù)。我們也可以在數(shù)組聲明的時候初始化數(shù)組,或者在聲明時就為它分配好空間,這樣我們就可以不用再為數(shù)組分配空間。
語法:
int [] ages = {12,18,9,33,45,60}; //聲明并初始化了一個數(shù)組,它有6個元素char [] symbol = new char[10] //聲明并分配了一個長度為10的char型數(shù)組 分配空間后就可以向數(shù)組中放數(shù)據(jù)了,數(shù)組中元素都是通過下標(biāo)來訪問的。
一維數(shù)組
數(shù)組可以分為一維數(shù)組和多維數(shù)組。一維數(shù)組是由數(shù)字組成單純的線性結(jié)構(gòu)的數(shù)組,簡單來理解就是一串?dāng)?shù)。在上面的例子中都是一維數(shù)組。
一維數(shù)組我們可以根據(jù)簡單地循環(huán)進(jìn)行遍歷操作。
比如:我們想要在控制臺上輸出我們上面定義的數(shù)組ages。
int [] ages = {12, 18, 9, 33, 45, 60};for(int i = 0; i < ages.length; i++){ //ages.length是獲取數(shù)組的長度 System.out.PRintln("數(shù)組中第"+(i+1)+"個元素是 "+ages[i]); //數(shù)組下標(biāo)是從零開始,一定要注意}運(yùn)行結(jié)果:

注意:
數(shù)組下標(biāo)從 0 開始。所以數(shù)組的下標(biāo)范圍是0 至 數(shù)組長度-1。
數(shù)組不能越界訪問,否則會報錯。
for 語句在數(shù)組內(nèi)可以使用特殊簡化版本,在遍歷數(shù)組、集合時,foreach 更簡單便捷。從英文字面意思理解 foreach 也就是“ for 每一個”的意思。
語法:
for(元素類型 元素變量:遍歷對象){ 執(zhí)行的代碼}例如上面的例子:
public class JudgePrime { public static void main(String[] args){ int [] ages = {12, 18, 9, 33, 45, 60}; int i = 1; for(int age:ages){ System.out.println("數(shù)組中第"+i+"個元素是"+age); i++; } }}二維數(shù)組
在我們的編程生涯中除了一維數(shù)組之外我們還會遇到許多多維數(shù)組的應(yīng)用,其中二維數(shù)組是最常見的。
二維數(shù)組可以看成是一間有座位的教室,座位我們一般用第幾排的第幾個進(jìn)行定位,每一個座位都有一個行和一個列的屬性,一排的座位相當(dāng)于一個一維數(shù)組,所以我們可以將二維數(shù)組簡單的理解為是一種“特殊”的一維數(shù)組,它的每個數(shù)組空間中保存的是一個一維數(shù)組。
二維數(shù)組也需要聲明和分配空間。
語法:
數(shù)據(jù)類型 [][] 數(shù)組名 = new 數(shù)據(jù)類型[行的個數(shù)][列的個數(shù)];//或者數(shù)據(jù)類型 [][] 數(shù)組名;數(shù)組名 = new 數(shù)據(jù)類型[行的個數(shù)][列的個數(shù)];//也可以數(shù)據(jù)類型 [][] 數(shù)組名 = {{第一行值1,第一行值2,...},{第二行值1,第二行值2,...},...}//二維數(shù)組的賦值和訪問,跟一維數(shù)組類似,可以通過下標(biāo)來逐個賦值和訪問,注意索引從 0 開始數(shù)組名[行的索引][列的索引] = 值;例子:
String [][] name = {{"ZhaoYi", "QianEr", "SunSan"}, {"LiSi", "ZhouWu", "WuLiu"}}; for(int i = 0; i < 2; i++){ for (int j = 0; j < 3; j++){ System.out.println(name[i][j] ); } }
新聞熱點
疑難解答