Java 陣列的不同定義方式和陣列長度為可變引數

柴月和岐月發表於2017-08-15

 

昨天遇到將ArrayList<String>轉化為String[]的問題,一時之間竟然想不出答案,遂問室友,得到了Java運算元組的新方式

常見定義方式

1.int[] myIntArray = new int[3]

2.int[] myIntArray = {1,2,3}

3.int[] myIntArray = new int[]{1,2,3}

4.少見的反射建立,int[] intArray = (int[]) Array.newInstance(int.class,3)

陣列長度為可變引數

	static void test(int i) {
		int[] myInt = new int[i];
	}

這段程式碼,給我的感覺就像開啟了新世界,當初自學Java的時候並沒有注意到這一塊,預設以為是跟C/C++一樣不能指定可變大小。當然,後面也學習了下這種方式的一些效果:

	static void test(int i) {
		int[] myInt = new int[i];
		System.out.println(myInt[5]);
	}

沒有指定資料的話,裡面是有預設值的。和新建的物件一樣,int預設值為0,boolean為false,float/double為0.0,String為null。

也測試下陣列的其他功能,都是可行的。好吧,解鎖了新姿勢


 

相關文章