1:Array說明
數(shù)組就是存儲數(shù)據(jù)長度固定的容器平匈,存儲多個數(shù)據(jù)的數(shù)據(jù)類型要一致捎迫。
為什么先看最基礎的數(shù)組呢浙踢,這是因為最基礎的數(shù)組 實際上是 整個數(shù)組集合的基礎
2:Array理解
Array就是迭代(循環(huán))的基礎
int[] arrInt = new int[10];
空間大惺谥邸:10
下標:0到9
1:數(shù)組的length 為空間大小 初始化時就已經(jīng)分配好空間(也有可能可以進行改變)
2:下標 每一個元素存儲在的數(shù)組的位置
最核心的代碼也就是這兩行:所有的迭代(循環(huán))都繞不過這里
for (int i = 0; i < arrInt.length; i++) {
System.out.println(arrInt[i]);
}
3:代碼
public class ArrayBasics {
/**
* 僅以 int類型的數(shù)組為例
*
* @param args
*/
public static void main(String[] args) {
//動態(tài)初始化
dynamicCreateArrIntTest();
//靜態(tài)初始化
staticCreateArrIntTest();
// 動態(tài)初始化
// int[] arrInt = new int[3];
// 靜態(tài)初始化
// int[] arrInt = new int[]{1,2,3};
// int[] arrInt = {1,2,3};
// 數(shù)據(jù)類型 數(shù)組名[] 不建議使用(因為比較難記憶)
// int arrIntOther [];
// int arrIntOther[] = new int[3];
// int arrIntOther[] = new int[]{1,2,3};
// int arrIntOther[] = {1,2,3};
}
/**
* 動態(tài)初始化:在初始化的時候, 必須需要手動指定數(shù)組的長度, 系統(tǒng)會為數(shù)組容器分配初始值.
*/
private static void dynamicCreateArrIntTest() {
System.out.println("==============================================");
System.out.println(" int[] arrInt = new int[3];方式 動態(tài)初始");
int[] arrInt = new int[3];
arrInt[0] = 1;
arrInt[1] = 2;
arrInt[2] = 3;
System.out.println("數(shù)組長度數(shù)組空間: " + arrInt.length);
//注意數(shù)組的開始索引下標為 0 數(shù)組長度就等于數(shù)組空間 容量為3 即是 【0,1,2】
for (int i = 0; i < arrInt.length; i++) {
System.out.println(arrInt[i]);
}
//不建議使用
for (int i = 1; i <= arrInt.length; i++) {
System.out.println(arrInt[i - 1]);
}
//Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 3
try {
arrInt[3] = 4;
}catch (Exception e){
e.printStackTrace();
}
}
/**
* 靜態(tài)初始化 : 初始化時指定每個數(shù)組元素的初始值橄维,由系統(tǒng)決定數(shù)組長度
*/
private static void staticCreateArrIntTest() {
// 數(shù)據(jù)類型[] 數(shù)組名 = new 數(shù)據(jù)類型[]{數(shù)據(jù)1,數(shù)據(jù)2,數(shù)據(jù)3...};
int[] arrInt = new int[]{1,2,3};
System.out.println("==============================================");
System.out.println("int[] arrInt = new int[]{1,2,3};方式 靜態(tài)初始");
System.out.println(arrInt[0]);
System.out.println(arrInt[1]);
System.out.println(arrInt[2]);
// 數(shù)據(jù)類型[] 數(shù)組名 = {數(shù)據(jù)1,數(shù)據(jù)2,數(shù)據(jù)3...};
int[] arrIntOther ={1,2,3};
System.out.println("==============================================");
System.out.println(" int[] arrIntOther ={1,2,3};方式 靜態(tài)初始");
System.out.println(arrIntOther[0]);
System.out.println(arrIntOther[1]);
System.out.println(arrIntOther[2]);
}
}
項目連接
請配合項目代碼食用效果更佳:
項目地址:
https://github.com/hesuijin/hesuijin-algo
Git下載地址:
https://github.com.cnpmjs.org/hesuijin/hesuijin-algo.git
algoBasics包