四、二维数组
1.二维数组:类似于excel表格,有行和列构成
2.行标和列标都是从0开始,访问二维数组通过行和列进行访问:
数组名[行下标/高纬][列下标/低维]
3.二维数组的定义:数据类型П 数组名=new 数据类型[行数][列数];
int[][] a= new int[4][3]; // 4行3列二维数组
五、数组的排序
1.排序:将数组中元素按照一定的排序顺序进行存储
2.排序方式:从小到大
(1)冒泡排序:每次将相邻的两个元素进行一一比较,较大的值往后放
int[]a={9,4,5,2,6,3,1,9};
/*
从小到大进行排序冒泡排序:每次将相邻的两个元素进行一一比较,较大的值往后
下标:0 1 2 3
元素:9 4 5 2
-------------第一轮------------
a0~a1 4 9 5 2
a1~a2 4 5 9 2
a2~a3 4 5 2 9 (最大值)
-------------第二轮-------------
a0~a1 4 5 2 9
a1~a2 4 2 5 9
-------------第三轮-------------
a0~a1 2 4 5 9
*/
//第i=1 轮:使用 a[j]代表第一个比较项,相邻 的一项 a「i+1]
/*
for(int j=0;j<3;j++){
//x=4-i=a.length -i
//使用 a[j] 和 a[i+1]进行比较
if(a[i]> a[i+1]){
// 交换:借助第三遍历
int temp = a[j];
a[j]= a[j+1];
a[j+1]= temp;
}
}
}
// 第i=2轮:
for(int j=0;j<2 ;j++){
// 使用 a[j]和 a[j+1]进行比较
if(a[j]> a[j+1]){
// 交换:借助第三遍历
int temp = a[j]:
a[j]= a[j+1];
a[j+1]= temp;
}
}
// 第i=3轮
for(int j=0;j<1;j++){
// 使用 a[j]和 a[j+1]进行比较
if(a[j]> a[j+1]){
// 交换:借助第三遍历
int temp = a[j];
a[j]= a[j+1];
a[j+1]= temp;
}
}
*/
// 外层循环控制比较的轮数
for(int i=1;i<a.length;i++){
// 内层循环,控制每一轮具体比较的内容
for(int j=0;j< a.length-1;j++){
//使用 a[j]和 a[j+1]进行比较
if(a[j]> a[j+1]){
// 交换:借助第三遍历
int temp= a[j];
a[j]= a[j+1];
a[j+1]= temp;
}
}
}
for(int i=0;i<a.length;i++){
System.out.print(a[i]+"\t");
(2)第二种:借助工具类
java.util.Arrays.sort(数组名);