Java基礎筆記09-陣列簡介

前方請直行發表於2020-11-09

Java基礎筆記09-陣列簡介

1.簡介

  • 陣列是一個容器,當需要儲存多個資料的時候,就需要有這麼一個容器,以方便儲存使用。
  • 陣列的特點:大小固定,陣列中的資料必須是同一種型別的資料。
  • 陣列的優缺點:查詢快(下標),增刪速度慢
  • 陣列可以是多維的,在此只簡單介紹一維與二維陣列

2.語法

  • 一維陣列的定義有幾種語法格式,在定義陣列時中括號在變數名前後都可以。

    • 資料型別[ ] 變數名 = new 資料型別[size];

    • 資料型別 變數名[ ] = new 資料型別[size];

    • int[] arr = new int[4];//一個大小為4的整型陣列,指定了陣列大小,但沒有直接給值
      int arr[] = new int[4];
      
    • 陣列型別[ ] 變數名 = new 資料型別[]{值1,值2…};

    • 陣列型別 變數名[ ] = new 資料型別[]{值1,值2…};

    • int[] arr = new int[] {1,2,3,4};//直接給資料值,由值的數量來決定陣列大小
      int arr[] = new int[] {1,2,3,4}
      
    • 陣列型別[ ] 變數名 = { 值1,值2…};

    • 陣列型別 變數名[ ] = { 值1,值2…};

    • int[] arr = {1,2,3,4};//簡寫形式,常見的使用這種格式
      int arr[] = {1,2,3,4}
      
  • 陣列值的獲取查詢

    • 陣列根據下標查詢陣列資料,下標對應了資料在陣列中的位置

    • 下標都是從0開始,這是固定不變的

    • 獲取陣列大小的屬性—length,即陣列長度

    • 陣列的下標最大值為陣列長度減一,不能超過這個數,否則編譯會報錯。

    • int[] arr = {1,2,3,4}
      System.out.println(arr[0]);//輸出arr的第一個元素
      System.out.println(arr.length);  //獲取arr的大小,即長度  
      System.out.println(arr[10]);//報錯,陣列下標越界異常,ArrayIndexOutofBoundsException
      
    • 陣列根據資料型別都有預設值,int型預設值為0,String型預設值為null。

3.二維陣列

  • 二維陣列的定義有幾種語法格式,在定義陣列時中括號在變數名前後都可以。

    • 資料型別 [ ] [ ] 變數名 = new 資料型別[行長度] [列長度];

    • 資料型別 變數名[ ] [ ] = new 資料型別[行長度] [列長度];

    • int[][] arr = new int[4][4];//一個大小為4行4列的整型陣列,指定了陣列大小,但沒有直接給值
      int arr[][] = new int[4][4];
      
    • 陣列型別[ ] [ ]變數名 = new 資料型別[ ] [ ]{{值1,值2…},{值1,值2…}…};

    • 陣列型別 變數名[ ] [ ] = new 資料型別[ ] [ ]{{值1,值2…},{值1,值2…}…};

    • int[][] arr = new int[][] {{1,2},{3,4}};//直接給資料值,由值的數量來決定陣列大小
      int arr[][] = new int[][] {{1,2},{3,4}};
      
    • 陣列型別[ ] [ ]變數名 = {{值1,值2…},{值1,值2…}…};

    • 陣列型別 變數名[ ] [ ]= {{值1,值2…},{值1,值2…}…};

    • int[][] arr = {{1,2},{3,4}};//簡寫形式,常見的使用這種格式
      int arr[][] = {{1,2},{3,4}};
      

4.舉例

public class Array {	
	public static void main(String[] args) {
		array1();
		array2();
	}
	
	/**
	 * 定義一個一維陣列,並進行遍歷
	 */
	public static void array1(){
		//定義一個一維陣列
		String[] arr1 = {"河南","浙江","福建"};
		//遍歷一維陣列
		for (int i=0;i<arr1.length;i++) {//遍歷時遍歷次數為陣列長度
			System.out.println(arr1[i]);
		}
	}
	
	/**
	 * 定義一個二維陣列,並進行遍歷
	 */
	public static void array2(){
		//定義一個二維陣列
		String[][] arr2 = {
				{"南陽","洛陽","安陽"},
				{"杭州","湖州","溫州"},
				{"莆田","廈門","龍巖"}
		};
		//遍歷二維陣列
		for (int i=0;i<arr2.length;i++) {
			for(int j=0;j<arr2[i].length;j++) {
				System.out.println(arr2[i][j]);
			}
		}
	}
}

相關文章