天天看點

數組的使用及注意事項

====== 數組的使用======

一、三種使用方法

1、使用方式一:動态初始化

格式:資料類型[ ] 變量名 = new 資料類型[大小]

例:double[] hens = new double[5];

使用方式一:動态初始化
		double[] hens = new double[5];
		Scanner myScanner = new Scanner(System.in);
		for(int i = 0 ; i < hens.length ; i++){

		System.out.println("請輸入第"+ (i+1) +"個雞的重量");
		hens[i] = myScanner.nextDouble();
	}
		System.out.println("========輸出=========");

		for(int i = 0 ; i < hens.length ; i++){

		System.out.println("第"+ (i+1) +"個雞的重量為:" + hens[i]);
		}

           

2、使用方式二:先聲明再初始化

格式:資料類型[ ] 變量名;

變量名 = new 資料類型[大小 ];

例:double[] hens;

hens = new double[5];

double[] hens ;
		Scanner myScanner = new Scanner(System.in);
		hens = new double[5];
		for(int i = 0 ; i < hens.length ; i++){

		System.out.println("請輸入第"+ (i+1) +"個雞的重量");
		
		hens[i] = myScanner.nextDouble();
	}
		System.out.println("========輸出=========");

		for(int i = 0 ; i < hens.length ; i++){

		System.out.println("第"+ (i+1) +"個雞的重量為:" + hens[i]);
		}
           

3、使用方式三:使用靜态初始化(知道數值且數量較少時使用)

格式:資料類型[ ] 變量名 = {};

例:double[ ] hens = {2,3,4,5,6};

double[] hens = {2,3,5,7,9};
		System.out.println("========輸出=========");
		for(int i = 0 ; i < hens.length ; i++){
		System.out.println("第"+ (i+1) +"個雞的重量為:" + hens[i]);
		}

           

=注意事項===

**一、**數組是多個相同類型資料的組合,實作對這些資料的統一管理

**二、**數組中的元素可以是任何資料類型,包括基本類型和引用類型,但是不能混用。

**三、**數組建立後,如果沒有指派,有預設值int 0, short 0, byte 0, long 0, float 0.0,double 0.0, char \u0000,.boolean false,String null

四、使用數組的步驟

1.聲明數組并開辟空間

2給數組各個元素指派

3使用數組

五、數組的下标是從0開始的。

六、數組下标必須在指定範圍内使用,否則報:下标越界異常,比如

int arr=new int[5];則有效下标為0-4

七、數組屬引用類型,數組型資料是對象(object)

數組指派機制==

一、變量(基本類型)的指派機制(值傳遞)

二、數組(引用資料類型)的指派機制(位址傳遞)

數組的使用及注意事項

如圖:

1、在定義基本資料類型時:

int  n1 = 10 ;
int  n2 = n1 ;
n2  =  80 ;
           

此時n2 = 80 ,而 n1 = 10;n1的值并不會改變

相當于重新申請了一塊空間。

2、在定義引用資料類型時:

數組的使用及注意事項
int [ ]  arr1 = { 1, 3, 5} ;
int [ ]  arr2 = arr1 ;
arr2[0] = 10 ;
           

而此時當把 arr1 指派給 arr2 時,是 arr2 指向了 arr1 的記憶體位址,相當于 arr1 和 arr2 指向了同一塊記憶體位址,此時修改 arr1 裡的值 arr2 也同時會修改。

數組的使用及注意事項