第五節:Java的陣列
1. 陣列的定義和初始化
陣列就是相同資料型別的元素按一定順序排列的集合。我們可以把它看成一個大的盒子,裡面按順序存放了多個數據型別相同的資料。
例如:

比如定義一個int型一維陣列a儲存四個人的年齡,陣列中的元素都可以通過下標來訪問,下標從 0 開始,到陣列長度-1結束。例如,可以通過 a[0] 獲取陣列中的第一個元素 18 ,a[3] 就可以取到第四個元素 10。
我們要使用陣列,首先我們得對陣列進行宣告。
語法:

其中,陣列名可以是任意合法的變數名,如:

當我們聲明瞭陣列後,需要為陣列分配空間,也就是定義多大的陣列。
語法:

陣列長度就是陣列最多可存放元素的個數。我們也可以在陣列宣告的時候初始化陣列,或者在宣告時就為它分配好空間,這樣我們就可以不用再為陣列分配空間。
語法:

分配空間後就可以向陣列中放資料了,陣列中元素都是通過下標來訪問的。
Java中可以將一個數組賦值給另一個數組,如:

其實真正做的是複製了一個引用,因此可以知道a2和a1是相同陣列的別名。

可以看到,修改a2的值,a1的值也跟著變化。
2. 一維陣列
陣列可以分為一維陣列和多維陣列。一維陣列是由元素組成單純的線性結構的陣列,簡單來理解就是一串元素。在上面的例子中都是一維陣列。
一維陣列我們可以根據簡單地迴圈進行遍歷操作。
比如我們想要在控制檯上輸出我們上面定義的陣列ages。

注意:
陣列下標從 0 開始。所以陣列的下標範圍是0 至 陣列長度-1。
陣列不能越界訪問,否則會報錯。
for 語句在陣列內可以使用特殊簡化版本,在遍歷陣列、集合時,foreach 更簡單便捷。從英文字面意思理解 foreach 也就是“ for 每一個”的意思。
語法:

例如上面的例子:

執行結果與前面的結果相同。
3. 二維陣列
在我們的程式設計生涯中除了一維陣列之外我們還會遇到許多多維陣列的應用,其中二維陣列是最常見的。
二維陣列可以看成是一間有座位的教室,座位我們一般用第幾排的第幾個進行定位,每一個座位都有一個行和一個列的屬性,一排的座位相當於一個一維陣列,所以我們可以將二維陣列簡單的理解為是一種“特殊”的一維陣列,它的每個陣列空間中儲存的是一個一維陣列。
二維陣列也需要宣告和分配空間。
語法:

例如:

例子:在控制檯上每10個數為一組,打印出前100的數,即1~100。(提示:可以用System.out.printf("%3d",整數)。

*Arrays 類
java.util.Arrays 類能方便地運算元組,它提供的所有方法都是靜態的。
具有以下功能:
給陣列賦值:通過 fill 方法。
對陣列排序:通過 sort 方法,按升序。
比較陣列:通過 equals 方法比較陣列中元素值是否相等。
查詢陣列元素:通過 binarySearch 方法能對排序好的陣列進行二分查詢法操作。
具體說明請查看下錶:

氣泡排序:


歡迎關注微信公眾號:Java的學習之路
裡面資料非常全,從java初級到高階都有,視訊,電子書,面試寶典,簡歷模板,經典案例,原始碼分析程式設計師故事以及解決bug方法。。。。應有盡有,可以推薦大家一起學習下!!
