演算法與資料結構筆記4——線性結構之陣列
阿新 • • 發佈:2019-01-05
陣列圖例
陣列的基本使用
程式碼舉例:
public class TestArray { public static void main(String[] args) { // 建立一個數組 int[] arr1 = new int[3]; // 獲取陣列長度 int length1 = arr1.length; System.out.println("arr的長度:"+length1); // 訪問陣列中的元素:陣列名.[下標] 注意:下標從0開始,最大可以取到長度-1 int element0 = arr1[0]; System.out.println("element0:"+element0); // 為陣列中的元素賦值 arr1[0] = 99; System.out.println("element0:"+arr1[0]); arr1[1] = 98; arr1[2] = 97; // 遍歷陣列 for (int i = 0; i < arr1.length; i++) { System.out.println("arr1 element"+i+":"+arr1[i]); } // 建立陣列的同時為陣列中的元素賦值 int[] arr2 = new int[] {90,80,70,60,50}; // 獲取陣列長度 System.out.println("arr2的長度:"+arr2.length); } }
為陣列新增元素
程式碼示例:
public class TestOpArray { public static void main(String[] args) { // 解決陣列長度不可變的問題 int[] arr = new int[] {9,8,7}; // 快速檢視陣列中的元素 System.out.println(Arrays.toString(arr)); // 要加入陣列的目標元素 int dst = 6; // 建立一個新的陣列,長度是原陣列長度+1 int[] newArr = new int[arr.length+1]; // 把原陣列中的資料全部複製到新陣列中 for (int i = 0; i < arr.length; i++) { newArr[i] = arr[i]; } // 把目標元素放入新陣列的最後 newArr[arr.length] = dst; // 新陣列替換原陣列 arr = newArr; // 檢視原陣列元素,看是否替換替換成功 System.out.println(Arrays.toString(newArr)); } }
為陣列刪除元素
程式碼示例:
import java.util.Arrays; public class TestOpArray2 { // 如何刪除陣列中的元素 public static void main(String[] args) { // 目標陣列 int[] arr = new int[] {9,8,7,6,5}; // 要刪除元素的下標 int dst = 3; // 建立一個新的陣列,長度是原陣列的長度-1 int[] newArr = new int[arr.length-1]; // 複製原陣列中除了要刪除的元素以外其他的元素 for (int i = 0; i < newArr.length; i++) { // 要刪除的元素之前的元素 if (i<dst) { newArr[i] = arr[i]; }else { // 要刪除的元素之後的元素 newArr[i] = arr[i+1]; } } // 新陣列替換舊陣列 arr = newArr; System.out.println(Arrays.toString(arr)); } }