Java知識系統回顧整理01基礎06數組01創建數組
一、數組定義
定義:數組是一個固定長度的,包含了相同類型數據的?容器
? ?
二、聲明數組
int[] a; 聲明了一個數組變量。
[]表示該變量是一個數組
int 表示數組裏的每一個元素都是一個整數
a 是變量名
但是,僅僅是這一句聲明,不會創建數組
? ?
有時候也會寫成int a[]; 聲明的過程這種寫法沒有什麽區別,不過考慮規範和性能,有一些區別,建議采用第一種寫法。(記得以前看過的《瘋狂Java講義》和菜鳥教程的Java部分裏有提到,兩種寫法會造成一些規範或者性能上的區別的)
? ?
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]; //聲明的同時,指向一個數組 ????} } |
? ?
四、訪問數組
數組下標基0
下標0,代表數組裏的第一個數
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個",超出範圍 ,產生數組下標越界異常???????? ????} } |
? ?
六、練習--數組最小值
題目:
首先創建一個長度是5的數組
然後給數組的每一位賦予隨機整數
通過for循環,遍歷數組,找出最小的一個值出來
? ?
0-100的 隨機整數的獲取辦法有多種,下面是參考辦法之一:
(int) (Math.random() * 100) |
註:上面一行代碼中,Math.random() 會得到一個0-1之間的隨機浮點數,然後乘以100,並強轉為整型即可。
public class HelloWorld { ????public static void main(String[] args) { ????????int[] a = new int[5]; ????????a[0] = (int) (Math.random() * 100); ????????a[1] = (int) (Math.random() * 100); ????????a[2] = (int) (Math.random() * 100); ????????a[3] = (int) (Math.random() * 100); ????????a[4] = (int) (Math.random() * 100); ???????? ? ????????System.out.println("數組中的各個隨機數是:"); ????????for (int i = 0; i < a.length; i++) ????????????System.out.println(a[i]);???????? ????????System.out.println("本練習的目的是,找出最小的一個值: "); ????} } |
? ?
官方答案:
? ?
public class HelloWorld { ????public static void main(String[] args) { ????????int[] a = new int[5]; ????????a[0] = (int) (Math.random() * 100); ????????a[1] = (int) (Math.random() * 100); ????????a[2] = (int) (Math.random() * 100); ????????a[3] = (int) (Math.random() * 100); ????????a[4] = (int) (Math.random() * 100); ?????????? ? ????????System.out.println("數組中的各個隨機數是:"); ????????for (int i = 0; i < a.length; i++) ????????????System.out.print(a[i] + " "); ????????System.out.println(); ????????int min = 100; ????????for (int i = 0; i < a.length; i++) { ????????????if(??a[i] < min ) ????????????????min = a[i]; ????????} ????????System.out.println("找出來的最小數值是:" +min);???????? ????} } |
? ?
? ?
? ?
? ?
? ?
Java知識系統回顧整理01基礎06數組01創建數組