java--静态的应用(工具类)

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);                     //打印出排序好的数组


	}
}




原文地址:https://www.cnblogs.com/javawebsoa/p/3236812.html