1. 程式人生 > 實用技巧 >4_陣列及其應用

4_陣列及其應用

目錄

一維陣列的基本概念

  • 當需要在Java程式中記錄單個數據內容是,宣告一個變數即可。
  • 當需要在Java程式中記錄多個型別相同的資料內容是,宣告一個一維陣列即可,一維陣列本質上就是在記憶體空間中申請一段連續的儲存單元。
  • 陣列是相同資料型別的多個元素的容器,元素按線性順序排列,在Java語言中體現為一種引用資料型別。

一維陣列的宣告方式

//宣告變數的語法格式:
	int num = 89;

//宣告陣列的語法格式:
	int[] arr = new int[5];

/*一維陣列相關概念:
  陣列名 - 用於記錄一維陣列在記憶體空間中的地址資訊,便於下次訪問。
  陣列元素 - 主要指存放在陣列中的資料內容,如:100、59、98等。
  陣列長度 - 主要指陣列中最多可以存放的元素個數,通常使用 陣列名.length 獲取。
  陣列下標 - 主要指陣列元素在陣列中的編號,從0開始可以取到 長度-1 。

*/

/*注意:
	Java宣告一個數組,會在堆區裡面開闢一個存放陣列資料的空間,該空間對應有一個記憶體地址,還會在棧區裡面存放陣列名字,該名字指向的就是陣列的記憶體地址。因此我們直接列印陣列,得到的結果是一個記憶體地址。
*/

陣列的優缺點

  • 可以直接通過下標(或索引)的方式訪問指定位置的元素,速度很快。
  • 陣列要求所有元素的型別相同。
  • 陣列要求記憶體空間連續,並且長度一旦確定就不能修改。
  • 增加和刪除元素時可能移動大量元素,效率低。

關於陣列的操作方法

一維陣列之間元素的拷貝

System.arraycopy(arr, 1, brr, 0, 3) //將arr中下標從1開始的3元素拷貝到brr中下標從0開始的位置

Arrays.toString(arr) //列印陣列arr中的所有元素
    
Arrays.fill(arr, 10) //給元素arr中所有元素填充為整數10
    
Arrays.equals(arr1, arr2) //判斷陣列arr1和arr2是否完全相同(包括內容和次序)

Arrays.sort(arr) //對陣列arr中的元素進行從小到大排序
    
Arrays.binarySearch(arr, 9) //從陣列arr中查詢指定元素9所在的位置