1、数组概念
a、数组可以看成是多个相同类型数据组合,对这些数据的统一管理。
b、数组变量属引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。
c、数组的元素可以是任何数据类型,包括基本类型和引用类型。
d、数组是只能分配在堆上面的,因为JAVA中的数组是引用类型。
2、数组声明
a、数组元素类型 数组名[ ]; 即type var[ ];
b、数组元素类型[ ] 数组名; 即type[ ] var;
3、数组赋值
默认初始化:
a、new int[5];
静态初始化
b、{1,2,3,4,5}
动态初始化
c、a[n] = m;
4、数组访问
数组名[数组下标],下标取值范围0~size-1。
4、数组排序
a、Arrays.sort(a);
b、冒泡排序:
c、选择排序:在要排序的一组数中,选出最小的一个数与第一个位置的数交换;
然后在剩下的数当中再找最小的与第二个位置的数交换,如此循环到倒数第二个数和最后一个数比较为止
d、插入排序:从数组的第二个元素开始,取得当前待处理的元素,插入到当前元素之前的子数组里面,直到数组的末尾。
5、数组查找
Arrays.binarySearch();
package main2;
public class CoreJavaDay11_2 {
public static void main(String args[]) {
//默认初始化方式
int []a = new int[3];
//静态初始化方式
int []b = {1, 2, 3};
//动态初始化
int []c = new int[3];
c[0] = 12;
//可变形式
int d[] = new int[3];
//数组的访问
System.out.println(d[1]);
//多维数组的定义形式如下:
int [][]e = new int[3][3];
int [][][][][][][][][]f = new int [3][][][][][][][][];
int [][]g = new int[3][];
System.out.println(g[1]);
String aa[][] = new String[5][5];
String bb[][] = {{"*"}, {"**"}, {"***"}, {"****"}, {"*****"}};
System.out.println(bb.length);
// for(int i = 0; i < bb.length; i++){
// System.out.println(bb[i][0]);
// }
String bbb[][] = {{"*"}, {"*", "*"}, {"*", "*", "*"}, {"*", "*", "*", "*"}, {"*", "*", "*", "*", "*"}};
// for(int i = 0; i < bbb.length; i++){
// for(int j = 0; j <= i; j++){
// System.out.print(bbb[i][j]);
// }
// System.out.println();
// }
String aaa[][] = new String[5][5];
aaa[0][0] = "*";
aaa[1][0] = "*";
aaa[1][1] = "*";
aaa[2][0] = "*";
aaa[2][1] = "*";
aaa[2][2] = "*";
aaa[3][0] = "*";
aaa[3][1] = "*";
aaa[3][2] = "*";
aaa[3][3] = "*";
aaa[4][0] = "*";
aaa[4][1] = "*";
aaa[4][2] = "*";
aaa[4][3] = "*";
aaa[4][4] = "*";
for(int i = 0; i < aaa.length; i++){
for(int j = 0; j < aaa[i].length; j++){
if(aaa[i][j] != null){
System.out.print(aaa[i][j]);
}
}
System.out.println();
}
/**
*
**
***
****
*****
*/
}
}
1、二维数组的创建
a、静态初始化
b、动态初始化
c、默认初始化
2、二维数组的赋值
a、二维数组的第一个方括号,标记第一维(即最外层)数组的元素。
b、二维数组的第二个方括号,标记第二维(即内层)数组的元素。
3、二维数组的访问
a、数组array[x][y]表示指定的是第x行第y列的值。 、
b、数组名后直接加上length(如array.length),所指的是有几行(Row)
c、指定索引后加上length(如array[0].length),指的是该行所拥有的元素,也就是列(Column)数目。