数组综合应用
一、排序算法
1.冒泡排序
2.选择排序
3.快速排序
二、Arrays类的常用方法
2.1equals()
比较两个数组的元素是否完全一致,返回的是true/false
int[] a1={1,2,3};
int[] a2={1,2,3};
System.out.println(Arrays.equals(a1,a2));//true
2.2Sort()升序排序
int[] a3={5,6,8,1};
Arrays.sort(a3);
System.out.println(Arrays.toString(a3));//[1, 5, 6, 8]
2.3toString
将一个数组转换成字符串类型,并用【】保护起来。
2.4fill()
将数组中所有的元素用一个新的数值全部替换。
int[] a3={5,6,8,1};
Arrays.fill(a3,6);
System.out.println(Arrays.toString(a3));//[6, 6, 6, 6]
2.5copyOf() 复制
int[] a1={1,2,3};
System.out.println(Arrays.toString(Arrays.copyOf(a1,6)));//[1, 2, 3, 0, 0, 0]
2.6binarySearch()
找元素对应的下标,前提是数组已经升序排列好
int[] a4={5,6,8,1};
System.out.println(Arrays.binarySearch(a4,6));//1
三、二维数组
3.1定义
格式:
<数据类型>[][]数组名;
<数据类型>数组名[][];
int[][] arr;//定义二维数组,注意定义最大维数。
arr=new int[6][3];//分配内存空间
//或者
intarr1[][]= new int[6][3];
3.2赋值
int[][] arr2 = new int[][]{{1,2,3},{2,34,6}};
int[][] arr2 = {{1,2,3},{2,34,6}};
3.3总结
二维数组初始化的三种方式
//第一种方式:
int a[][]={{1,2,3},{4,5,6}};
//第二种方式:
int[][] ints=new int[4][2];
//ints[i][j] =__;//分别赋值
ints[1][1]=1;
//第三种方式:
int[][] arr3=new int[5][];//五行的长度
for (int i = 0; i <arr3.length ; i++) {
arr3[i]=new int[i+1];//每次循环,列的长度在变化,每次都会重新申请空间(长度)
for (int j = 0; j <arr3[i].length ; j++) {
arr3[i][j]=i+j;
}
}