Java(20):陣列
阿新 • • 發佈:2020-11-25
package zzz; import java.util.Arrays; public class ArrayTest { public static void main(String[] args) { // 1.陣列定義 // (1)int[] array = new int[5]; // (2)int[] array = new int[] {3,5,7,1}; // (3)int[] array = {3,5,7,1}; // 2.記憶體分析(new關鍵字都會開闢新的記憶體空間) // 棧儲存區域性變數arr,陣列物件的記憶體地址賦給arr,一旦離開作用域則消失,釋放記憶體空間// 堆記憶體儲存物件資料4個連續的int資料型別,物件資料沒有引用不會馬上消失,等待垃圾回收 int[] arr = new int[4]; arr = null; int[] arr1 = new int[2]; arr1[1] = 100; int[] arr2 = arr1; arr1[1] = 10; arr2[1] = 20; System.out.println(arr1[1]); // 3.Arrays的使用int[] a = new int[] {50,10,30,70}; System.out.println(Arrays.toString(a)); Arrays.sort(a); System.out.println(Arrays.toString(a)); // 4.遍歷 int[] x = new int[] {0,1,2}; for (int i=0; i<x.length; i++) { System.out.println(x[i]); }// 5.二維陣列 // 記憶體分析:棧記憶體上的二維陣列array存放堆記憶體中的3個一維陣列地址 // 每一個一維陣列再分別指向堆記憶體上的一維陣列 int[][] array = new int[3][4]; System.out.println(array); System.out.println(array.length); // 二維陣列儲存一維陣列的個數3個 System.out.println(array[0]); // 第1個一維陣列的地址 System.out.println(array[0].length); //輸出4,array[0]存放4個大小的一維陣列 } }