ArrayTool.java文件
/** 静态的应用。 每一个应用程序中都有公行动的功能,可以将这些功能进行抽取,独立封装以便复用 由于ArrayTool中并没有封装特有数据,而且数组的每一个方法也没有用到ArrayTool中的特有数据,为让程序更加严谨, 可以将ArrayToll中的方法都定义程static的,直接用类名调用即可 接下来就可以将ArrayTool发送给其他人,其他人只要将该文件设置到classpath的路径下就可以使用该工具 为使对方清楚该类的功能,可以通过说明书(文档注释)来完成 */ /** 这是一个可以对数组进行曹组的工具类,该类中提供了获取最值(最大,最小)、排序的功能 @author 某某 @version V1.0 */ class ArrayTool { /** 空参数构造函数,由于前文中提到的原因,避免被建立对象而占用过多无用内存,声明为private类型 */ private ArrayTool(){} /** 获取意义整型数组的最大值 @param arr 接受一个int型数组 @return max 返回一个该数组中的最大值 */ public static int getMax(int[] arr) { int max=0; for (int i=0 ; i<arr.length ; i++ ) { if(arr[i]>max) max=arr[i]; } return max; } /** 获取意义整型数组的最小值 @param arr 接受一个int型数组 @return min 返回一个该数组中的最小值 */ public static int getMin(int[] arr) { int min=9999; for (int i=0 ; i<arr.length ; i++ ) { if(arr[i]<min) min=arr[i]; } return min; } /** 给int型数组选择排序(自小到大) @param arr 接受一个int型数组 */ public static void selectSort(int[] arr) { for (int i=0 ; i<arr.length-1 ; i++) { for (int j=i+1 ; j<arr.length ; j++ ) { if(arr[i]>arr[j]) { swap(arr,i,j); } } } } /** 给int型数组冒泡排序(自小到大) @param arr 接受一个int型数组 */ public static void bubbleSort(int[] arr) { for (int x=0 ; x<arr.length-1 ; x++ ) { for (int y=0 ; y<arr.length-x-1 ; y++ ) { if(arr[y]>arr[y+1]) { swap(arr,y,y+1); } } } } /** 交换数组中元素的位置 @param arr 数组 @param i 要交换的位置坐标1 @param i 要交换的位置坐标2 */ private static void swap(int[] arr,int i,int j) { int temp=arr[i]; arr[i]=arr[j]; arr[j]=temp; } /** 打印数组中的元素。 */ public static void printArray(int[] arr) { System.out.print("["); for (int i=0 ; i<arr.length ; i++ ) { if(i!=arr.length-1) System.out.print(arr[i]+", "); else System.out.println(arr[i]+"]"); } } }
ArrayToolDemo文件
class ArrayToolDemo //测试主函数 { public static void main(String[] args) { int[] arr = {32,1,45,6,89,33,99}; //声明一个无需数组 ArrayTool.printArray(arr); //打印数组 int max = ArrayTool.getMax(arr); //测试最大值 System.out.println("max = "+max); int min = ArrayTool.getMin(arr); //测试最小值 System.out.println("min = "+min); //ArrayTool.printArray(arr); //打印数组 //ArrayTool.selectSort(arr); //测试选择排序 //ArrayTool.printArray(arr); //打印出排序好的数组 ArrayTool.printArray(arr); //打印数组 ArrayTool.bubbleSort(arr); //测试冒泡排序 ArrayTool.printArray(arr); //打印出排序好的数组 } }