數組的定義
- 數組是相同類型數據的有序集合。
- 數組描述的是相同類型的若干個數據,按照一定的先后次序排列組合而成。
- 其中,每一個數據稱作一個數組元素,每個數組元素可以通過一個下標來訪問他們,數組的下標是從“0”開始的。
數組的聲明創建
- 首先必須聲明數組變量,才能在程序中使用數組。語法如下:
dataType[ ] arrayRefVar; //首選方法
dataType arrryRefVar[ ]; //效果相同,但不是首選方法。
- Java語言使用"new"操作符來創建數組,語法如下;
dataType [ ] arrayRefVar = new dataType[array size];
- 數組的元素是通過索引來訪問的,數組索引從0開始。
- 獲取數組長度: array.length
三種初始化
- 靜態初始化
int[ ] a ={1,2,3};
Man[ ] mans ={new Man(1,1),new Man(2,2)};
- 動態初始化
int[ ] a = new int[ ];
a[0] = 1;
a[1] = 2;
a[2] = 3;
-
數組的默認初始化
數組是引用類型,它的元素相當於類的實例變量,因此數組一經分配空間,其中的每個元素也被按照實例變量同樣的方式被隱式初始化。
數組的四個基本特點
- 其長度是確定的,數組一旦被創建,它的大小就是不可以改變的。
- 其元素必須是想同類型,不允許出現混合類型。
- 數組中的元素可以是任何數據類型,包括基本類型和引用類型。
- 數組變量屬於引用類型,數組也可以看成是對象,數組中的每個元素相當於該對象的成員變量。數組本事就是對象,Java中對象實在堆中的,因此數組無論保存原始類型還是其他對象類型,數組對象本身是在堆中的。
package Array;
public class ArrayDemo1 {
public static void main(String[] args) {
int[] nums = new int[10]; //創建一個數組,長度為10.
nums[0] = 1;
nums[1] = 2;
nums[2] = 3;
nums[3] = 4;
nums[4] = 5;
nums[5] = 6;
nums[6] = 7;
nums[7] = 8;
nums[8] = 9;
nums[9] = 10;
int sum = 0;
for(int i =0;i<nums.length;i++){
sum = sum + nums[i];
}
System.out.println(sum);
}
}
package Array;
public class ArrayDemo2 {
public static void main(String[] args) {
int[] arrays = {1,2,3,4,5};
for(int i = 0;i<arrays.length;i++){
System.out.println(arrays[i]);
}
System.out.println("============================");
int sum = 0;
for (int i = 0; i<arrays.length ; i++) {
sum = sum + arrays[i];
}
System.out.println("sum"+sum);
System.out.println("=======================");
// 查找最大元素
int max= arrays[0];
for (int i = 0; i < arrays.length; i++) {
if(arrays[i]>max){
max = arrays[i];
}
}
System.out.println("max="+max);
}
}
package Array;
public class ArrayDemo4 {
public static void main(String[] args) {
int[] arrays ={1,2,3,4,5};
// 將arrays數組里的值倒着排序
int[] result = new int[arrays.length];//定義一個result數組, 數組的長度等於arrays數組的長度
for (int i = 4, j =0;j< arrays.length; i--, j++) { //arrays數組的最大下標為4,
result[j] = arrays[i]; //把數組arrays中的值賦給數組result result[0] = arrays[4],result[1] = arrays[3]
// result[2] = arrays[2],result[3] = arrays[1],result[4] = arrays[4]
System.out.print(result[j]+" ");
}
}
}