java数组使用、Arrays类使用 、排序方法
数组使用
数组的基本使用:
package charpter4;
public class ArrayDemo2 {
public static void main(String[] args) {
int[] arrays = {1,2,3,4,5};
printArray(arrays);
arrays=reverse(arrays);
printArray(arrays);
}
//输出数组
public static void printArray(int[] arrays){
for(int x:arrays){
System.out.print(x+" ");
}
System.out.println();
}
//翻转数组
public static int[] reverse(int[] arrays){
int[] result = new int[arrays.length];
int i=arrays.length;
for (int x:arrays){
result[--i]=x;
}
return result;
}
}
多维数组:
int[][] a={{1,2},{3,4},{5,6}};
Arrays 类
在工具类java.util.Arrays中
package charpter4;
import javafx.scene.control.TableColumn;
import java.sql.SQLOutput;
import java.util.Arrays;
public class ArraysUse {
public static void main(String[] args) {
int[] a = {1,4,5,2,3,6};
//打印数组元素Arrays.toString
System.out.println(Arrays.toString(a));
//给数组赋值Arrays.fill()
Arrays.fill(a,0,1,10);
System.out.println(Arrays.toString(a));
//排序方法 Arrays.sort() 由小到大排序
Arrays.sort(a);
System.out.println(Arrays.toString(a));
//比较方法 Arrays.equal()
System.out.println(Arrays.equals(a,a));
//查找数组元素,二分查找 已排序 Arrays.binarySearch()
System.out.println(Arrays.binarySearch(a,10));
int[] aa = {1,4,5,2,3,6};
//冒泡排序 两层循环: 外层表示冒泡轮数,内层表示比较
for(int i=0;i<aa.length;i++)
for(int j=0;j<aa.length-1-i;j++){
if(aa[j]>aa[j+1]){
aa[j]=aa[j]+aa[j+1];
aa[j+1]=aa[j]-aa[j+1];
aa[j]=aa[j]-aa[j+1];
}
}
System.out.println(Arrays.toString(aa));
int[] b = {1,4,5,2,3,6};
//简单选择排序
for(int i=0;i<b.length;i++)
for(int j=i;j<b.length;j++){
if(b[i]>b[j]){
b[i]=b[i]+b[j];
b[j]=b[i]-b[j];
b[i]=b[i]-b[j];
}
}
System.out.println(Arrays.toString(b));
}
}
八大排序
- 插入排序-直接插入排序
- 插入排序-希尔排序
- 选择排序-简单选择排序(如上)
- 选择排序-堆排序
- 交换排序-冒泡排序(如上)
- 交换排序-快速排序
- 归并排序
- 基数排序

浙公网安备 33010602011771号