一维数组
基本概念
1、数组中只允许放同一种类型(可以是父子关系)。
2、数组即对象。
例:
int[ ] arrs={0,1,2};//arrs即一个对象。
3、数组是定长的,不可以增加或者减少。
4、声明数组:int[ ] arrs; 格式为:数组元素类型[ ] 数组名字;
创建一维数组必须声明数组长度: int[] arrs = new int[3];
5、初始化数组,如果不初始化值,系统默认为0。
初始化例:
int arr1 = {1,2,3,5,25};(推荐)
int arr2 = new int[] {1,2,3,5,25};
6、数组元素下标(索引)从0开始计算。
基本方法
数组遍历:
public class Test {
public static void main(String[] args) {
int[] arrs4 = {1,2,3,4,5,6,7,8};
System.out.println("倒序遍历:");
for(int i = arrs4.length-1;i>=0;i--) {
System.out.println(arrs4[i]);
}
System.out.println("foreach遍历:");
for (int arr:arrs4
) {
System.out.println(arr);//快捷键:sout
}
System.out.println("for遍历:");
for(int i =0;i<arrs4.length;i++) {
System.out.println(arrs4[i]);
}
System.out.println("while遍历");
int k =0;
while(k<arrs4.length) {
System.out.println(arrs4[k]);
k++;
}
System.out.println("do while遍历");
int u =0;
do {
System.out.println(arrs4[u]);
u++;
}while (u<arrs4.length
);
}
}
Arrays类
Arrays类:工具类,操作数组使用的。
Arrays.fill:数组元素替换。
Arrays.copyof:数组元素复制。
Arrays.binarySearch:数组元素索引。
public class test3 {
public static void main(String[] args) {
int[] arrs = {1,2,3,4};
System.out.println("替换前:"+Arrays.toString(arrs));
Arrays.fill(arrs,2,3,2);
System.out.println("替换后:"+Arrays.toString(arrs));
int[] arrs1 = {1,2,3,4,0,5,4,1,2};
System.out.println("排序前:"+Arrays.toString(arrs1));
Arrays.sort(arrs1);
System.out.println("排序后:"+Arrays.toString(arrs1));
int[] arrs2 = {1,2,3};
int[] arrs21 = new int [4];
System.out.println("复制前"+Arrays.toString(arrs2));
arrs21 = Arrays.copyOf(arrs2,4);
System.out.println("复制后"+Arrays.toString(arrs21));
int[] arrs3 = {1,2,3};
System.out.println(Arrays.binarySearch(arrs3,3));//返回值是元素索引
}
}
二维数组
基本概念
定义一个二维数组,至少要指定“行”,可以不指定“列”。
int[][] arrays = new int[3][];
基本方法
数组遍历:
public class test2 {
public static void main(String[] args) {
//定义一个数组:
int [][] arrs1= new int[3][];
int[][]arrs2 = {{1,2,3},{2,4},{3,5}};
System.out.println("foreach遍历:");
for (int[] arrs3:arrs2
) {
for (int arrs4:arrs3
) {
System.out.print(arrs4+"\t");
}
System.out.println();
}
System.out.println("for遍历");
for(int i=0;i<arrs2.length;i++) {
for(int j=0;j<arrs2[i].length;j++) {
System.out.print(arrs2[i][j]+"\t");
}
System.out.println();
}
System.out.println("while遍历");
int k = 0;
while(k<arrs2.length) {
int u =0;
while (u<arrs2[k].length) {
System.out.print(arrs2[k][u]+"\t");
u++;
}
System.out.println();
k++;
}
}
}