数组
数组是一系列具有相同数据类型的数据的集合
数组的使用
数组的长度 :就是对应存放数据的个数
数组的下标 :是数组取值与赋值的依赖,从0开始,0 - 第一个位置,1 - 第二个位置 … 下标值 = 长度 - 1
数组的定义
//定义一个数组 确定数据类型 确定数组的长度
int as[] = new int[5];
//赋值
as[0] = 10;
as[1] = 11;
as[4] = 14;
数组工具类
Arrays
int bs[] = {10,2,3,4,5,6,7};
//数组转字符串
String arrayStr = Arrays.toString(bs);
//数组自增长
bs = Arrays.copyOf(bs,bs.length + 1);
//快速排序(升序)
Arrays.sort(bs);
数组的排序
冒泡排序
比较相邻的两个数,如果按照顺序排序,当前的数a,比后面的数大时,交换位置,第一轮过后,最大的值会排在数组的最后面,经过n-1轮完成排序。
public static void method01(){
int as[] = {6,4,8,2,9};
System.out.println("排序前:" + Arrays.toString(as));
for (int i = 0; i < as.length - 1 ; i++){
for(int j = 0; j < as.length - 1 - i; j++){
if (as[j] > as[j+1]){
int tmp = as[j];
as[j] = as[j+1];
as[j+1] = tmp;
}
}
}
System.out.println("排序后:" + Arrays.toString(as));
}
选择排序
数组中每个值与每个值进行排序,第一轮过后,最小的值排在最前面(升序),经过n-1轮完成排序。
public static void method02(){
int as[] = {6,4,8,2,9};
System.out.println("排序前:" + Arrays.toString(as));
for (int i = 0; i < as.length - 1 ; i++){
for(int j = i+1; j < as.length; j++){
if (as[i] > as[j]){
int tmp = as[i];
as[i] = as[j];
as[j] = tmp;
}
}
}
System.out.println("排序后:" + Arrays.toString(as));
}