一、数组的排序
1、冒泡排序:思路(升序):比较相邻的两个数,较大的数据需要向后移动。长度减1。
//核心代码:
int[] a = {15,23,8,10,7};
for(int i = 1;i<a.length;i++){//控制轮数,趟数
for(int j = 0 ; j < a.length-i;j++){
if(a[j] > a[j+1]){
//交换
}
}
}
2、选择排序:思路(升序):每次找个基准值,定一个变量k表示比较小的值的下标。每轮比较完,都在基准值上放一个比较小数。
//核心代码:
int[] a = {15,23,8,10,7};
for(int i= 0;i <a.length - 1;i++){//控制轮数,趟数
int k = i;
for(int j = k + 1;j<a.length;j++){
if(arr[k] > arr[j]){
k = j;
}
}
//交换
if(k != i){
int temp = arr[k];
arr[k] = arr[i];
arr[i] = temp;
}
}
3、工具类:Arrays
JDK提供好的类:
A:Scanner,读取键盘
B:String,字符串
C:Math,数学的
D:Arrays,提供数组的常规操作的
E:System,
二、数组的复制
就是将一个数组的数据,复制到另一个数值中。
方法一:通过循环,依次复制,将原数组的数据,一个一个,复制到目标数组中
方法二:Arrays类里方法:copyOf(原数组,新数组的长度)-->返回值是新数组
方法三:System类里的方法:arraycopy(原数组,原数组位置,新数组,新数组位置,拷贝的个数)
三、 二维数组
维度:dimension
数组:存储相同类型的一组数据。
一维数组:数组中存储的就是数据了。
二维数组:存储的是一维数组。本质也叫数组的数组。也被称为矩阵:行和列的。