2018-03-12
數組是一個固定長度的,包含了相同類型數據的容器
一、聲明數組:
int[] a; 聲明了一個數組變量。
[]表示該變量是一個數組
int 表示數組里的每一個元素都是一個整數
a 是變量名
但是,僅僅是這一句聲明,不會創建數組
有時候也會寫成int a[]; 沒有任何區別,就是你看哪種順眼的問題:
public class HelloWorld { public static void main(String[] args) { // 聲明一個數組 int[] a; } }
二、創建數組:
創建數組的時候,要指明數組的長度。new int[5]
引用概念:
如果變量代表一個數組,比如a,我們把a叫做引用;與基本類型不同:int c = 5; 這叫給c賦值為5
聲明一個引用 int[] a;
a = new int[5];
讓a這個引用,指向數組。
public class HelloWorld { public static void main(String[] args) { //聲明一個引用 int[] a; //創建一個長度是5的數組,並且使用引用a指向該數組 a = new int[5]; int[] b = new int[5]; //聲明的同時,指向一個數組 } }
三、訪問數組:
public class HelloWorld { public static void main(String[] args) { int[] a; a = new int[5]; a[0]= 1; //下標0,代表數組里的第一個數 a[1]= 2; a[2]= 3; a[3]= 4; a[4]= 5; } }
四、數組長度:
.length屬性用於訪問一個數組的長度
數組訪問下標范圍是0到長度-1
一旦超過這個范圍,就會產生數組下標越界異常
public class HelloWorld { public static void main(String[] args) { int[] a; a = new int[5]; System.out.println(a.length); //打印數組的長度 a[4]=100; //下標4,實質上是“第5個”,既最后一個 a[5]=101; //下標5,實質上是“第6個”,超出范圍 ,產生數組下標越界異常 } }
五、初始化數組:
1、分配空間與賦值分步進行:
public class HelloWorld { public static void main(String[] args) { int[] a = new int[5]; //分配了長度是5的數組,但是沒有賦值 //沒有賦值,那么就會使用默認值 //作為int類型的數組,默認值是0 System.out.println(a[0]); //進行賦值 a[0] = 100; a[1] = 101; a[2] = 103; a[3] = 120; a[4] = 140; } }
2、分配空間,同時賦值:
public class HelloWorld { public static void main(String[] args) { //寫法一: 分配空間同時賦值 int[] a = new int[]{100,102,444,836,3236}; //寫法二: 省略了new int[],效果一樣 int[] b = {100,102,444,836,3236}; //寫法三:同時分配空間,和指定內容 //在這個例子里,長度是3,內容是5個,產生矛盾了 //所以如果指定了數組的內容,就不能同時設置數組的長度 int[] c = new int[3]{100,102,444,836,3236}; } }