java語言基礎知識---數組Array

一、數組的概念
1.數組(Array),多個相同類型的數據按照一定的順序排列的集合,並使用一個名字命名,並通過編號的方式對這些數據進行統一管理

2.數組相關概念:
2.1數組名
2.2元素
2.3角標、下標、索引
2.4數組的長度:元素的個數

3.數組的特點:
3.1數組是有序排列的
3.2數組屬於引用數組類型的變量。數組的元素,既可以是基本數據類型也可以是引用數據類型
3.3創建數組對象會在內存中開闢一整塊連續的空間
3.4數組的長度一單確定,就不能更改

4.數組的分類:
4.1按照維數:一維數組、二維數組……
4.2按照數組元素的類型:基本數據類型元素的數組,引用數據類型元素的數組

5.一維數組的使用:
5.1一維數組的聲明和初始化
5.2如何調用數組的指定位置的元素
5.3如何獲取數組的長度
5.4如何遍歷數組
5.5數組元素的默認初始化值
5.5.1整型數組默認值爲:0
浮點型數組默認值爲:0.0
char型數組默認值爲:0或’\u0000’,而不是’0’;
5.5.4 boolean類型數組默認值爲false;
5.5.5 引用數組類型數組的默認值爲null;
5.6數組的內存解析

//1.一維數組的聲明和初始化
//1.1靜態初始化;
int[] ids = new int[]{12,14,54,23};//聲明和初始化;
//1.2動態初始化;
String[] names = new String[5];
//總結:數組的初始化完成,那麼他的長度也就確定了;

//2.如何調用數組的指定位置的元素;
//數組的角標/索引是從0開始計算的
names[0] = "張三";
names[1] = "李四";
names[2] = "王麻子";
names[3] = "劉鐵蓋";
names[4] = "趙五";

//3.如何獲取數組的長度;
//獲取角標/索引是用的屬性:length
int num = names.length;
System.out.println(num);//5

4.如何遍歷數組
for(int i = 0;i < names.length; i++){
System.out.println(names[i]);//
}

5.數組元素的默認初始化值
5.1整型數組默認值爲:0
5.2浮點型數組默認值爲:0.0
5.3char型數組默認值爲:0或'\u0000',而不是'0';
5.4boolean類型數組默認值爲false
5.5 引用數組類型數組的默認值爲null
int[] ids = new int[4]{};
for(int i = 0;i < ids .length; i++){
	System.out.println(ids [i]);//默認值爲0;
}


5.6數組的內存解析
在這裏插入圖片描述

二、二維數組的使用
1.理解:
可以看做是一個一維數組array1又最爲另一個一維數組array2的元素存在;
二位數組分爲外層數組的元素,內層數組的元素
int[][] arr = new int[4][3];
外層元素:arr[0],arr[1]……
內層元素:arr[0][0],arr[1][1]……

2.二維數組的使用:
2.1二維數組的聲明和初始化
2.2如何調用數組的指定位置的元素
2.3如何獲取數組的長度
2.4如何遍歷數組
2.5數組元素的默認初始化值
初始化方式一:int[][] arr = new int[4][3];
外層元素的初始化值爲:地址值
內層元素的初始化值爲:與一維數組初始化情況相同

初始化方式二:int[][] arr = new int[4][];
外層元素的初始化值爲:null
內層元素的初始化值爲:不能調用,否則報空指針

2.6數組的內存解析

1.二維數組的聲明和初始化
int[] arr = new int[]{};//一維數組
//靜態初始化
int[][] arr1 = new int[][]{{1,2,3,},{4,6},{5,7,9}};
//動態初始化1
int[][] arr2 = new int[3][2];
//動態初始化2
int[][] arr2 = new int[3][];

//其他正確寫法:(都是二維數組)
int arr3[][] = new int[][]{{1,2,3,},{4,6},{5,7,9}};
int[] arr4[] = new int[][]{{1,2,3,},{4,6},{5,7,9}};

//2如何調用數組的指定位置的元素
System.out.println(arr1[0][1]);//2;
System.out.println(arr2[1][1]);//null;
System.out.println(arr3[1][0]);//報空指針;

//3.獲取數組的長度
System.out.println(arr4.length);//3
System.out.println(arr4[0].length);//3

//4.如何遍歷二維數組
for(int i = 0;i < arr4.length; i++){
	for(int j = 0;j< arr4[i].length; j++){
		System.out.println(arr4[i][j]);//

	}
}
//5.二維數組元素的默認初始化值
int[][] arr = new int[4][3];
System.out.println(arr);//[I@6d06d69c
System.out.println(arr[0]);//[I@15db9742
System.out.println(arr[0][0]);//0

float[][] arr1 = new float[4][3];
System.out.println(arr1[0]);//地址值
System.out.println(arr4[0][0]);//0.0

String[][] arr1 = new String[4][2];
System.out.println(arr2[1]);//地址值
System.out.println(arr4[1][1]);//null





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章