1:數組:存儲同一種數據類型的多個數據的容器
2:特點:每一個元素都有編號,從0開始到數組長度-1,簡稱爲索引。
3:定義格式:
a:數據類型 [] 數組名
b:數據類型 數組名 []
4:數組的初始化:
a:動態初始化:
舉例:int [] arr=new int[5];
b:靜態初始化:
舉例:int [] arr={1,2,3};
5:Java的內存分配:
a:棧:存儲局部變量
b:堆:存儲所有new出來的東西
c:方法區:
d:本地方法區:系統相關
e:寄存器:與cpu有關
6:數組的常見操作:
(1):數組的遍歷:
public class Array {
public static void main(String[] args) {
int [] arr={2,7,10,5,3};
for (int i=0;i<arr.length;i++){
System.out.println(arr[i]);
}
}
}
(2):數組的最大值:(最小值的原理和最大值一樣)
public class ArrayMax {
public static void main(String[] args) {
int [] arr={2,7,10,5,3};
System.out.println("最大值爲:"+getMax(arr));
}
//獲取數組最大值的方法
public static int getMax(int [] arr){
int max=arr[0];
for (int i=0;i<arr.length;i++){
if (arr[i]>max){
max=arr[i];
}
}
return max;
}
}
(3):數組的翻轉:
/**
* 數組反轉問題
*/
public class ArrayReverse {
public static void main(String[] args) {
int[] arr = {1, 2, 3, 4, 5, 6, 7};
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
System.out.println("---------------");
for (int min = 0, max = arr.length - 1; min <= max; min++, max--) {
int temp = arr[min];
arr[min] = arr[max];
arr[max] = temp;
}
System.out.println("反轉後的數組爲:");
for (int i = 0; i < arr.length; i++) {
System.out.println(arr[i]);
}
}
}
(4):基本查找:
public static int getIndex(int[] arr,int value) {
for(int x=0; x<arr.length; x++) {
if(arr[x] == value) {
return x;
}
}
return -1;
}