java入门 07 3\9
数组
-
一维数组:
-
声明和初始化: int **[ ] ids **;//声明 ids = new int [ ]{ 1001, 1002};//初始化
或者一起进行String [ ] names = new String[5];
-
调用数组:通过角标的方式调用。(从零开始到n-1结束)
-
获取数组长度:属性(length)数组名.length eg: names.length
-
数组元素的默认初始化值:
- 整型:0
- 浮点型:0.0
- char型:0 或 ‘\u0000’ 而不是’ 0 ’
- boolean型: false
- 引用数据类型: null
-
-
多维数组的使用
-
二维数组:可以看成一维数组中每个元素又是另一个一维数组。
-
声明和初始化:
int [][] [ ] [ ] arr1 = int new [ ] [ ] {{1, 2, 3}, {4, 5,}, {6, 7 , 8}};
String [ ] [ ] arr2 = new String [ 3 ] [ 2 ];
String [ ] [ ] arr2 = new String [3] [ ];
-
调用
arr[ 3] [ 2]; 第三行第二列
-
获取数组的长度
arr.length
arr[ 0 ]. lentgh
-
二维数组的遍历
i < arr.length
j < arr[i]. length
-
默认初始化值
- 内层数元素为 0 (外层是指内部有明确的元素个数)
- arr【 0 】 为【I@… (地址)
- arr 为【【I@… (地址) 两个【【代表二维数组
- arr【i】 = (int) Math.random() 随机数 取值0<= a < 1
-
-
-
常见算法
- 赋值:杨辉三角、螺旋数组
- 求最大值,最小值,平均数,总和等
- 数组复制、反转、查找(线性、二分查找) equals是对比内容是否相等 eg:flag.equals(arr[i])
- 数组元素的排序(十大排序算法)
-
Arrays工具类的使用
- 判断两个数组是否相等 : boolean equals (int []a, int []b)
- 输出数组信息 : String toString(int []a)
- 将指定值填充到数组之中 : void fill(int []a, int val)
- 对数组进行排序 : void sort(int[] a)
- 对排序后的数组进行二分法检索指定的值 : int binarySearch (int []a, int key)